iptables nat转发 【支持自动更新ddns】

现在的转发工具也挺多了,但我既不想用面板,也不愿意在ddns改变的时候上机器手动设置ip,2021年了,谁还不是个用tls的美男子呢?所以也不需要隧道

我只想它安安静静地后台运行不要乱动

依赖:python3 iptables crontab(用于每隔1分钟更新ip)
仅测试于Debian,centos用iptables的理论可行
仅测试tcp,udp没用过

开机通过rc-local自动加载规则
crontab每隔1分钟查询ddns记录

https://github.com/010ada/iptables-app

git clone https://github.com/010ada/iptables-app
cd iptables-app
bash install.sh

# 查看网卡ip
ip addr

python3 main.py -l ${网卡ip} -p ${转发端口} -s ${server.ddns} -sp ${server.port} -ns ${name server} -proto tcp

关于 name server

一般在name server面板就可以看到
如果你是cf的ddns,设置为1.1.1.1
不知道就去 https://mxtoolbox.com/DNSLookup.aspx
或者用dig查

dig NS www.cloudflare.com

辅助命令

# 查看定时任务
crontab -l

# 手动更新ddns
python3 main.py -a sync

# 手动加载转发规则
python3 main.py -a load

# 查看已有转发
# 代码无力,只能用这个了
iptables -t nat -vnL

# 强制清空 (如果你担心影响其他人的规则,其实也用不上这个命令,因为添加规则的时候会自动覆盖)
iptables -t nat -F

好东西,支持一下

好东西,支持一下

必须支持非常感谢作者。