小米路由器R2D 开发版解决NAT无效问题

编程入门 行业动态 更新时间:2024-10-25 08:26:56

作为IT 折腾是本能 ,自从刷了小米R2D 系统版本: 2.25.209 开发版, 原本设置192.168.1.254 6688 作为VPN 服务器映射到公网上 ,然而端口转发功能再也无法有用。

通过百度/谷歌查阅各种资源,初步判断为WEB 界面设置NAT 的转发自动生成的命令有问题。所以打算在SSH模式下手动设置转发功能:
下面文档是给自己一个记录,避免后期忘记。

1)开启小米路由SSH 模式,这个百度上有很多资料,不在重复。
2)IPTABLES 添加DNAT 转发命令,设置需要在NAT 表中的PREROUTING 链中 添加 开放的主机和端口,注意由于我主机采用的是PPPOE 上网动态IP方式,需要设定指定 pppoe-wan端口。
iptables -t nat -I PREROUTING -i pppoe-wan -p tcp --dport 6688 -j DNAT --to-destination 192.168.1.254:6688
  • 命令生效后,通过iptables -t nat -L -n 查看NAT表中防火墙 设置

    Chain PREROUTING (policy ACCEPT)
    target prot opt source destination
    DNAT tcp – 0.0.0.0/0 0.0.0.0/0 tcp dpt:6688 to:192.168.1.254:6688

3)IPTABLES 添加SNAT 设置, 需要在NAT表中的POSTROUTING 链中 将192.168.1.254 6688的数据包通过PPPOE 伪装回复给源IP。
iptables -t nat -I POSTROUTING -d 192.168.1.254 -p tcp --dport 6688 -j MASQUERAD
  • 命令生效后,通过iptables -t nat -L -n 查看NAT表中防火墙 设置

    Chain POSTROUTING (policy ACCEPT)
    target prot opt source destination
    MASQUERADE tcp – 0.0.0.0/0 192.168.1.254 tcp dpt:6688

4) IPTABLES 放行 filter 表中FORWARD 链 转发给192.168.1.254 6688 的数据包
iptables -I FORWARD -d 192.168.1.254 -p tcp --dport 6688 -j ACCEP
  • 命令生效后,通过iptables -t filter -L -n 查看filter 表的防火墙设置

    Chain FORWARD (policy DROP)
    target prot opt source destination
    ACCEPT tcp – 0.0.0.0/0 192.168.1.254 tcp dpt:6688

5)通过站长工具端口扫描, 发现6688 端口已经开放。

6)最后IPTABLES 配置需要保存,否则小米路由器重启的时候会恢复原来设置,导致前面所添加的配置丢失。
	service iptbales save
  • 该命令在小米路由R2D SSH 版本下执行失败,提示service: not found, 应该是小米路由器根据openwrt
    深度定制版本,部分服务启动命令方式不同导致的,目前筋疲力尽,暂时没有兴趣再研究下去,期待有高手解决该问题。

  • 附带小米路由的内核版本

     root@XiaoQiang:~# uname -a
    
     Linux XiaoQiang 2.6.36 #3 MiWiFi-R2D-2.25.209 SMP PREEMPT Tue Oct 16 11:45:02 UTC 2018 		armv7l GNU/Linux	
    

更多推荐

小米路由器R2D 开发版解决NAT无效问题

本文发布于:2023-06-14 02:41:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1428789.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:小米   路由器   NAT   R2D

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!