请教各位先进:
光猫桥接,路由器拨号,slaac 配置,下面设备全都有正常 ipv6 ,正常联网。
以前有 ipv4 公网时,是路由器下面安排一个树莓派跑 godns 服务,即时反映 ipv4 变化到 cloudflare 域名的,没问题。
现在改为 ipv6 ,树莓派的 godns 只能反应自己的 ipv6 地址,怎么能获取路由器的 ipv6 地址?就是 traceroute 的第一跳的网关地址吧。
1
shenjinpeng 284 天前
为什么要获取路由器的 ipv6 ? 每个设备都有自己的 ipv6 地址, 你哪些设备要解析就在哪些设备装 ddns 解析自己就好了
路由器如果是软路由那就自己解析, 普通路由器解析了也没用 一般路由器的地址就是网关地址, 获取设备的网关地址就行了 |
2
wucc OP 谢谢兄弟。
一个考量内网是有些设备没法装 ddns 服务,另一个是主机暴露了多个端口,担心安全性问题。 希望解析到路由器,然后由路由器统一端口转发。 路由器是普通路由器。 |
3
deorth 284 天前 via Android
普通路由器支持转发 v6 端口?
|
4
wucc OP 支持呀,tplink xdr 3050
|
5
xiaofami 282 天前
有没有方法可以实时获取局域网内所有设备的 IPv6 地址呢,看了几个帖子, 类似 https://github.com/jeessy2/ddns-go/issues/31 等许多人提出过类似疑问。家里路由器可以获取 60 长度的动态前缀,只有一小部分设备可以运行 DDNS-GO 之类服务
|
6
ChaosAttractor 276 天前 1
@xiaofami IPv6 分为 SLAAC 和 DHCPv6 ,SLAAC 如它的名字,是无状态的,而 DHCP 是有状态的,无状态意味着路由器不知道设备用的什么地址,自然没法做 DDNS 这种事情
DHCP 的话,考虑一下把内网设备的 DHCP 租约映射成成权威域名服务器 具体来说,DNS 是递归解析的,你需要通过 NS 记录,把你的域名的三级域名(例如 xxx.home.lostattractor.net) 指到一个权威 DNS 服务器(比如说你的路由器),然后权威服务器例如可以通过设备名,返回对应的 v6 地址,例如我家现在所以设备的 v4/v6 地址都可以通过 hostname.home.lostattractor.net 查到 然后对于 SLAAC ,如你帖子里说的,可以通过 EUI64 反算,但是 EUI64 是根据 MAC 地址生成后缀的,所以你需要有设备的 mac 地址,一方面这可以扫,一方面你的设备是不是至少会用 dhcpv4 ,那么 dhcpv4 的租约里就包括 mac 地址,你可以用前缀+dhcpv4 租约里的 mac 地址去猜 v6 地址,然后 ping 一下就知道设备有没有真的用了 很碰巧的是 dnsmasq 前段时间更新实现了这个 SLAAC 猜测的功能,叫 ra-name ,虽然用 dnsmasq 当权威服务器很不靠谱,但是 dnsmasq 已经能完成以上所有的操作了 不过 openwrt 虽然 v4 用了 dnsmasq ,v6 却是自己实现的 odhcpd (因为 relay 功能),所以暂时可能用不上,有兴趣的话过段时间我写个博客( |
7
charley008 223 天前 1
如果路由器 ipv6 和莓树派的 ipv6 前缀一样就容易。我用的是 ubnt 的 usg pro4 , 路由器会有两个 ipv6 地址。一个是 pppoe 的还有一个是 eth0 的。tplink 的没用过不是很了解。
admin@USG-PRO-4:~$ ip -6 addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 inet6 240e:353:2bc:ba40:****:****:****:****/64 scope global valid_lft forever preferred_lft forever inet6 fe80::****:****:****:****/64 scope link valid_lft forever preferred_lft forever 4: eth2: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 inet6 fe80::****:****:****:****/64 scope link valid_lft forever preferred_lft forever 39: pppoe0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1492 qlen 100 inet6 240e:350:205:88b:****:****:****:****/64 scope global dynamic valid_lft 2591701sec preferred_lft 604501sec inet6 fe80::****:****:****:****/10 scope link valid_lft forever preferred_lft forever |