OpenWRT的NAT环回似乎失效问题

自己编译了一个OpenWRT作为主路由,但是一开始端口转发无效,经过一番摸索,端口转发问题解决,但是在内网使用ddns外网+端口号无法访问又出现了,经过另外的折腾终于解决,现在记录一下,希望对存在类似问题的朋友有帮助。

OpenWRT版本号:
固件版本 OpenWrt R22.1.1 / LuCI Master (git-21.335.48743-5f363d9)
内核版本 5.10.93

一、端口转发失效的问题
有人说是内核的问题,有人说是docker的问题,再重新编译也比较麻烦,看看能不能省事哪里设置一下最好能解决。经过测试,有人说要在防火墙–自定义规则里面设置命令,我试了下,可以了。命令如下:

iptables -t nat -I PREROUTING -i pppoe-WAN -p tcp --dport 9180 -j DNAT --to-destination 10.0.0.1:80

上面这条命令,“pppoe-WAN”是自己WAN口的名称,如果不一样自行替换一下,“9180”是转发出去的外网端口,“10.0.0.1:80”是自己内网设备IP以及它的端口,自行替换。然后重启路由器就可以了。

二、NAT环回失效问题

  1. ssh连接openwrt系统后,编辑/etc/sysctl.d/11-br-netfilter.conf文件,确认后面的值是0,如果不是,需要改为0。
 net.bridge.bridge-nf-call-arptables=0
 net.bridge.bridge-nf-call-ip6tables=0
 net.bridge.bridge-nf-call-iptables=0
  1. 编辑/etc/sysctl.conf文件。文件内容可能是空的,把上面三行内容复制进sysctl.conf文件,保存退出。
  2. ssh内输入sysctl -p命令,查看输出结果是不是第一条下面的那三条内容。
  3. 最后,输入/etc/init.d/sysctl restart 。

上面的内容,我也是网上找的的,设置完成后,还是不行,文章来源是使用openwrt作为拨号主路由使用中关于端口回流失效的问题
后来我在无意间发现,OpenWRT的端口转发中有一个“启用 NAT 环回”的选项,默认是启用状态。我就想,上面文章中的设置就是启用NAT环回,这里再启用会不会冲突了呢?我就把“启用 NAT 环回”的选项取消掉了,试了一下,居然成功了,简直不可思议。
在这里插入图片描述

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
要在OpenWrt中配置NAT转发,可以按照以下步骤进行操作: 1. 登录到OpenWrt设备的Web界面或通过SSH登录到设备的命令行界面。 2. 找到并编辑 `/etc/config/firewall` 文件,您可以使用文本编辑器如vi或nano进行编辑。 3. 在文件中找到 `config defaults` 部分,通常在文件的开头。 4. 在 `config defaults` 部分中,确保 `option input`、`option output` 和 `option forward` 的值都设置为 `ACCEPT`。这将允许转发和访问控制规则。 5. 在文件中找到或添加一个名为 `config redirect` 的新配置部分,用于定义NAT转发规则。 6. 在 `config redirect` 部分中,设置以下选项来定义转发规则: - `option name`: 规则的名称,可以随意指定。 - `option src`: 源地址,可以设置为 `wan` 表示从WAN接口接收的流量。 - `option dest`: 目标地址,可以设置为 `lan` 表示将流量转发到LAN接口。 - `option proto`: 协议,可以设置为具体的协议类型如TCP或UDP。 - `option src_dport`: 源端口,可以设置为具体的端口号或端口范围。 - `option dest_ip`: 目标IP地址,可以设置为要转发到的目标设备的IP地址。 - `option dest_port`: 目标端口,可以设置为要转发到的目标设备的端口号。 - `option target`: 目标,可以设置为 `DNAT` 表示进行目标地址转换。 7. 保存并关闭文件。 8. 重新启动防火墙服务,可以通过执行以下命令来实现:`/etc/init.d/firewall restart` 通过这些步骤,您可以配置OpenWrt设备上的NAT转发规则。确保根据您的需求正确设置源地址、目标地址、协议、端口和目标设备的IP地址和端口。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值