找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 4894|回复: 10

在IPV6环境下,如何开放下级设备给互联网访问

[复制链接]
发表于 2018-12-10 14:41 | 显示全部楼层 |阅读模式
本帖最后由 le062 于 2020-7-3 21:18 编辑

最近我家里的移动宽带可以分配到原生IPV6地址,这样路由器下级的所有设备都拥有了独立IPV6地址。
简单找了下iptables的资料,可以在非全局关闭路由器防火墙的情况下,指定开放一个子设备的外网访问,命令如下:
  1. iptables -A FORWARD -m mac --mac-source 12:34:56:78:12:5
  2. 5 -j ACCEPT
复制代码
参考来源:https://www.cyberciti.biz/tips/i ... ress-filtering.html

注意,需在命令中指定子设备的mac地址,之后如下图加入自动脚本中即可。



-------------------------------------------------------------------------------------
2018年12月10日 18点01分 第一次编辑
经过测试,发现这条命令只能让外网ping到此设备,依然无法访问其端口。
目前可通过下面两条命令开放所有端口,但需指定其IP地址,而IP地址并不固定,这就有点坑爹了。
  1. ip6tables -A FORWARD -p all -s 1111:2222:3333:6860:6fe6:6a59:5003:433d -j ACCEPT
  2. ip6tables -A FORWARD -p all -d 1111:2222:3333:6860:6fe6:6a59:5003:433d -j ACCEPT
复制代码


-------------------------------------------------------------------------------------
2018年12月10日 18点59分 第二次编辑
由于子设备分配到的是动态IPv6地址,可以考虑将所有子设备的特定端口开放。不完美,但比关闭防火墙好很多。
  1. ip6tables -A FORWARD -p tcp --dport 22 -j ACCEPT
  2. ip6tables -A FORWARD -p tcp --dport 6660 -j ACCEPT
  3. ip6tables -A FORWARD -p tcp --dport 6661 -j ACCEPT
复制代码

-------------------------------------------------------------------------------------
2020年7月3日
换了红米AC2100,因为要用它的加速器。所以无法刷第三方系统。相关命令需要加在指定Chain三秒
  1. ip6tables -I forwarding_rule -p tcp --dport 22 -j ACCEPT
  2. ip6tables -I forwarding_rule -p tcp --dport 6660 -j ACCEPT
  3. ip6tables -I forwarding_rule -p tcp --dport 6661 -j ACCEPT
复制代码
开机自启:vi /etc/rc.local
  1. # restore phy config
  2. speed=$(uci -q get xiaoqiang.common.WAN_SPEED)
  3. [ -n "$speed" ] && /usr/sbin/phyhelper swan "$speed"

  4. ip6tables -I forwarding_rule -p tcp --dport 22 -j ACCEPT
  5. ip6tables -I forwarding_rule -p tcp --dport 6660 -j ACCEPT
  6. ip6tables -I forwarding_rule -p tcp --dport 6661 -j ACCEPT

  7. exit 0
复制代码







本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 1恩山币 +1 收起 理由
pureair + 1 几亿网民,我们俩竟然神奇的在恩山相遇了!来,1分也是分!

查看全部评分

发表于 2018-12-10 15:20 | 显示全部楼层
ip6tables试试呢,openwrt是两个命令分开的
回复 支持 反对

使用道具 举报

发表于 2018-12-10 17:10 | 显示全部楼层
这里的MAC是匹配 源MAC ,--mac-source,只能开放内网设备上网权限,不能开放内网设备被外网访问的权限

点评

确实呢。这个命令只让内网可以被外网PING,但是端口仍然无法访问。  详情 回复 发表于 2018-12-10 17:14
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-10 17:14 | 显示全部楼层
leav325 发表于 2018-12-10 17:10
这里的MAC是匹配 源MAC ,--mac-source,只能开放内网设备上网权限,不能开放内网设备被外网访问的权限

确实呢。这个命令只让内网可以被外网PING,但是端口仍然无法访问。
回复 支持 反对

使用道具 举报

发表于 2018-12-10 21:44 | 显示全部楼层
开放特定端口目前正确的选择,看我的帖子,也是这么干的
https://www.right.com.cn/forum/thread-372567-1-1.html
回复 支持 反对

使用道具 举报

发表于 2018-12-11 08:30 | 显示全部楼层
#开机自动安装运行 6relayd
export PATH=‘/etc/storage/bin:/tmp/script:/etc/storage/script:/opt/usr/sbin:/opt/usr/bin:/opt/sbin:/opt/bin:/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin‘
export LD_LIBRARY_PATH=/lib:/opt/lib
while ! [ -x "`which opkg`" ]
do
        logger -t "【6relayd】" "Waitting opt install"     
        sleep 3
done
while ! [ -x "`which 6relayd`" ]
do
        logger -t "【6relayd】" "6relayd not found,begin to install it"
        opkg update
        opkg install 6relayd
done
logger -t "【6relayd】" "6relayd has been installed"
6relayd -d -A eth2.2 br0
logger -t "【6relayd】" "6relayd start"

以上这段拷贝到路由器启动后执行,重启路由器。
路由器下面所有设备就都能获取公网IPV6地址了,我用了很久了没问题。
回复 支持 反对

使用道具 举报

发表于 2018-12-13 22:33 | 显示全部楼层
马克下,感觉用得着
回复 支持 反对

使用道具 举报

发表于 2018-12-20 15:24 | 显示全部楼层
mark下
紫薯补丁
回复 支持 反对

使用道具 举报

发表于 2018-12-20 20:29 | 显示全部楼层
请问楼主,有ipv6网络,外网如何访问内网的机器
回复 支持 反对

使用道具 举报

发表于 2019-7-9 13:19 | 显示全部楼层

点评

学到了,多谢  详情 回复 发表于 2019-7-10 08:13
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-7-10 08:13 | 显示全部楼层
shb110119 发表于 2019-7-9 13:19
https://blog.ptsang.net/match-ipv6-dynamic-addresses-in-iptables  这个帮你解毒..

学到了,多谢
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-6-17 08:55

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com

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