LEDE 配置 IPv6 以及公网访问
偶然发现江苏电信宽带已经分配了 IPv6 pd 前缀,一不做二不休搞一下。
基础概念
IPv6 与 v4 不同。v4 时代运营商一般只给用户分配1个公网 ip,然后用户自己的路由器通过 NAT 再给局域网设备分配内网 IP,也就是 192.168.x.x
这种。这种情况下内网设备没有独立的公网 IP,要想从公网访问必须配置路由器端口转发。
随着 v4 资源枯竭,现在运营商默认已经不再分配公网 IP 了。要想正常从外网访问,必须做内网穿透。
IPv6 有无数个地址可供分配,“可以给地球上的每一粒沙子都分配一个 IP 地址”。因此运营商分配的策略也会变化。v4 分配的是一个地址,而 v6 分配的是一个前缀,也就是所谓的 pd
,相当于是一整个网段,我们可以自己继续往下分配,从而使得每一个局域网设备都能获得公网 IP 地址。
这里采用的方案是光猫桥接,LEDE 路由拨号。
如果无法访问光猫
很多人用 LEDE 连接后可以上网但是打不开光猫的管理页面。
要求:知道光猫的 IP 且不与 LEDE 在同一网段。
假设光猫接到了路由器的 eth0
口,光猫 IP 是192.168.1.1
,进入 LEDE 终端执行下面指令:
#eth0是接光猫的网口名称,192.168.1.2随便写(是分配给LEDE WAN的IP),不冲突且位于光猫网段就行。
ifconfig eth0 192.168.1.2 netmask 255.255.255.0
#下面两个是添加防火墙规则允许访问光猫
#192.168.1.1为光猫自身IP
iptables -I forwarding_rule -d 192.168.1.1 -j ACCEPT
#192.168.1.1为光猫自身IP
iptables -t nat -I postrouting_rule -d 192.168.1.1 -j MASQUERADE
然后就可以访问光猫的自身 IP 了。
配置光猫
首先得确认光猫启用了 IPv6。一般来说电信应该远程下发配置支持 v6 了,登录光猫后台,进入 状态-网络侧信息
,查看 INTERNET
的 IPv6 是否启用就行了。
如果进去后界面比较美观,显得「不专业」,找不到网络侧状态。那么尝试访问
8080
端口进入专业的登录界面。或者回到标准登录界面,找到并点击类似快速装维入口
的按钮,再点击返回登录页面
就好了。
如果 IPv6 没有启用,要想办法拿到光猫的超级密码,可以自己搜索型号或者去X宝找人帮忙。进入后台后点击 网络-宽带设置
,连接名称选择 INTERNET B_ VID
,IP 模式选择 IPv4&IPv6
就好了。(或者尝试联系宽带师傅帮忙更改)
配置路由
WAN:
进入 网络-接口-WAN-高级设置
,勾选 使用内置 IPv6管理
,自动获取 IPv6 地址。
LAN:
LAN-一般设置-高级设置
,勾选 使用内置 IPv6 管理
,DHCP-IPv6设置
,改为服务器模式。
如果 WAN 配置 IPv4 的时候没有勾选使用对端通告的 DNS 而是手动指定的,那么此处必须同步指定 IPv6 的 DNS。
负载均衡:
这一步必不可少否则 IPv6 流量会不可达。
在 网络-负载均衡-策略
,将所有条目的 备用成员
修改为 默认(使用主路由表)
。
其实也可以在
规则
选项卡看看实际使用了哪些策略,只改这一部分也行。
到此为止路由器以及下属的设备应该就可以访问 IPv6 啦 :tada:
可以在 网络-诊断
里 Ping 一下 ipv6.baidu.com
,或者在命令行执行 ping -6 ipv6.baidu.com
来测试。
外网访问内部设备的公网 IP
一开始已经讲到,IPv6 一大特点就是可以给局域网每一个设备都分配一个公网 IP 而不需要使用路由器 IP 进行端口转发。现在我们已经成功得到地址了,在网络-接口
里看到 LAN 的 IPv6 地址,我们可以用另一个外网设备(例如手机使用流量)进行 ping 是通的,当然前提是你的手机也得有 IPv6 才行,可以使用流量打开 http://www.test-ipv6.com/ 进行测试。
但是如果 ping 内网设备就不通了,原因是防火墙拦截。进入 网络-防火墙-通信规则-新建转发规则
,名字随便填,源区域为 WAN
,目标区域为 LAN
添加并编辑。限制地址为 仅IPv6
,协议任何
,动作接受
。
这样就可以顺利从外网访问内部设备的 IPv6 地址了。
警告 :bangbang: 上述规则仅供测试,把所有设备所有端口所有协议暴露在公网是非常危险的 :bomb: 如有需要,请至少指明目标地址与协议,并妥善配置设备自身的防火墙。测试完成后请立即删除上述转发规则:heavy_exclamation_mark:
IPv6 常识
地址前缀:
240e::/20
: 中国电信2409:8000::/20
: 中国移动2408:8000::/20
: 中国联通2000::/3
: 全局单播地址。也就是全球可路由的公网地址。上述三个都属于这个。FE80::/10
: 链路本地地址。类似192.168.x.x
2002::/16
: 仅供 6to4 隧道使用
特殊地址:
::
: 相当于0.0.0.0
::1
: 相当于127.0.0.1