查看: 12022|回复: 5

[需求建议] 转发:openwrt上实现nat1无需dmz和upnp

[复制链接]

239

主题

1112

帖子

3886

积分

骨灰法师

Rank: 8Rank: 8

积分
3886
发表于 2018-5-13 06:17:09 | 显示全部楼层 |阅读模式
高恪AK系列硬件AP隆重上市
本帖最后由 qfnuzlr 于 2018-5-13 09:01 编辑

源码及作者博客
https://github.com/Chion82/netfilter-full-cone-nat
https://blog.chionlab.moe/2018/02/09/full-cone-nat-with-linux/

编译:
修改 include/netfilter.mk ,加入下面的代码
  • $(eval $(call nf_add,IPT_FULLCONENAT,CONFIG_NETFILTER_XT_TARGET_FULLCONENAT, $(P_XT)xt_FULLCONENAT))
  • IPT_BUILTIN += $(IPT_FULLCONENAT-y) $(IPT_FULLCONENAT-m)


修改 package/kernel/linux/modules/netfilter.mk,加入下面的代码
  • define KernelPackage/ipt-fullconenat
  •   TITLE:=Netfilter full-cone NAT support
  •   KCONFIG:= \
  •     CONFIG_NETFILTER_IP_NF_TARGET_FULLCONENAT \
  •     CONFIG_NETFILTER_XT_TARGET_FULLCONENAT \
  •     CONFIG_NF_CONNTRACK_EVENTS=y
  •   FILES:=$(foreach mod,$(IPT_FULLCONENAT-m),$(LINUX_DIR)/net/$(mod).ko)
  •   AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_FULLCONENAT-m)))
  •   $(call AddDepends/ipt,+kmod-nf-nat)
  • endef
  • $(eval $(call KernelPackage,ipt-fullconenat))



把附件的 651-netfilter-add-xt_FULLCONENAT-target.patch 复制到 target/linux/generic/hack-(内核版本) 中
把附件的 800-fullconenat-target.patch 复制到 package/network/utils/iptables/patches/ 中

make menuconfig 选择 Kernel modules - Netfilter extensions - kmod-ipt-fullconenat,后编译

使用:
先禁用 OpenWrt 自带的 MASQUERADE NAT (Symmetric NAT):在 网络-防火墙 基本设置中去掉 WAN 区域的“IP 动态伪装”选项,保存
禁用 NAT 后会断网,然后在自定义规则中加两行规则启用 Full cone NAT:
  • iptables -t nat -A zone_wan_prerouting -j FULLCONENAT
  • iptables -t nat -A zone_wan_postrouting -j FULLCONENAT



验证:使用“NAT类型检测工具”(自行搜索)测试,测试时要关闭 Windows 防火墙


回复

使用道具 举报

375

主题

1万

帖子

4万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
41040
发表于 2018-5-13 09:24:20 来自手机 | 显示全部楼层
高恪AK系列硬件AP隆重上市
多谢多谢
回复

使用道具 举报

58

主题

517

帖子

1047

积分

中级达人

Rank: 5Rank: 5

积分
1047
发表于 2018-5-13 09:35:11 | 显示全部楼层
就在5分钟前,我为了NAT1刚把openwrt刷回老毛子,结果一上论坛就看到你的教程,让我情何以堪啊
回复 支持 反对

使用道具 举报

2

主题

575

帖子

643

积分

固件达人

Rank: 4

积分
643
发表于 2018-5-13 11:02:33 | 显示全部楼层
谢谢分享了!
回复 支持 反对

使用道具 举报

239

主题

1112

帖子

3886

积分

骨灰法师

Rank: 8Rank: 8

积分
3886
 楼主| 发表于 2018-5-13 11:23:27 | 显示全部楼层
rookie34 发表于 2018-5-13 09:35
就在5分钟前,我为了NAT1刚把openwrt刷回老毛子,结果一上论坛就看到你的教程,让我情何以堪啊 ...

我都是高恪 我转给高恪研发人员看下 能不能把高恪研究一下 NAT4变成NAT1
回复 支持 反对

使用道具 举报

21

主题

304

帖子

1414

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1414
发表于 2018-5-13 14:56:56 | 显示全部楼层
这贴要顶!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表