Linux系统使用nftables进行端口转发教程,支持DDNS动态IP/端口转发设置

nftables是用于替换iptables的数据包过滤框架,目前已在Centos、Debian等最新Linux系统发行版作为生产工具提供。相比较iptables,nftables优势更明显、支持对动态IP进行转发、端口段转发、自动检测本机IP等,以配置文件保存转发规则、对其设置更轻松。

前言:适用于centos8、redhat8、fedora31和支持nftables的debian系linux发行版如debian10;

项目地址:

https://github.com/arloor/nftables-nat-rust

1、一般情况下,Linux最新发行版会默认安装nftables,使用以下命令关闭firewalld、关闭selinux、开启内核端口转发、安装nftables;

复制代码
service firewalld stop
systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config  
sed -n '/^net.ipv4.ip_forward=1/'p /etc/sysctl.conf | grep -q "net.ipv4.ip_forward=1"
echo 1 > /proc/sys/net/ipv4/ip_forward
if [ $? -ne 0 ]; then
    echo -e "net.ipv4.ip_forward=1" >> /etc/sysctl.conf && sysctl -p
fi
yum install -y  nftables
复制代码

2、下载可执行文件并赋予执行权限;

wget -O /usr/local/bin/nat https://zhujiget.com/wp-content/uploads/sh/dnat
chmod +x /usr/local/bin/nat

3、创建systemd服务;

复制代码
cat > /lib/systemd/system/nat.service <<EOF
[Unit] 
Description=dnat-service 
After=network-online.target 
Wants=network-online.target 
 
[Service] 
ExecStart=/usr/local/bin/nat /etc/nat.conf 
LimitNOFILE=100000 
Restart=always 
RestartSec=60 
 
[Install] 
WantedBy=multi-user.target 
EOF
复制代码

4、设置为开机启动,并启动该服务;

systemctl daemon-reload
systemctl enable nat
systemctl start nat

5、生成配置文件,也可以使用 vi /etc/nat.conf 命令添加删除修改转发规则;

cat > /etc/nat.conf <<EOF 
SINGLE,22222,6666,zhujiget.com 
RANGE,10000,20000,zhujiget.com 
EOF

注释:

每行代表1个规则,行内以英文逗号分隔为4段内容

SINGLE:代表单端口转发:本机22222端口转发到远程blog.tgae.xyz域名或IP的6666端口

SINGLE:代表端口段转发:本机10000-20000转发到远程blog.tgae.xyz域名或IP的10000-20000端口

6、停止以及卸载命令

复制代码
## 停止定时监听域名解析地任务
service nat stop
 
## 清空nat规则
nft add table ip nat
nft delete table ip nat
 
## 禁止开机启动
systemctl disable nat
复制代码

以上Linux系统使用nftables进行端口转发教程,支持DDNS动态IP/端口转发设置的详细内容。

posted @   神经蛙  阅读(2598)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示