我有一个分配了/ 64 IPv6地址块的VPS。我正在尝试从家里的pfSense路由器部署一个6in4隧道,并能够通过该隧道访问IPv6地址。
我成功地启动了网关,但是我无法ping通除了我的pfSense盒中的/ 64以外的任何其他IP。虽然从VPS Ping起作用。
这是我的/ etc / network / interfaces配置 -
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 123.456.xxx.yyy
netmask 24
gateway 123.456.xxx.1
dns-nameservers 8.8.8.8 8.8.4.4
iface eth0 inet6 static
address aaaa:bbbb:my:ipv6::1
netmask 48
gateway aaaa:bbbb::1
auto tunnel0
iface tunnel0 inet6 v4tunnel
address aaaa:bbbb:my:ipv6::9
netmask 64
endpoint 66.abc.def.20
up ip -6 route add aaaa:bbbb:my:ipv6::/64 via aaaa:bbbb:my:ipv6::10
pre-up iptables-restore < /etc/iptables/rules.v4
pre-up ip6tables-restore < /etc/iptables/rules.v6
这是v4的iptables规则
iptables -I INPUT -p 41 -s 66.abc.def.20 -j ACCEPT
这是v6的ip6tables规则
ip6tables -I FORWARD -i tunnel0 -j ACCEPT
ip6tables -I FORWARD -o tunnel0 -j ACCEPT
我还在/etc/sysctl.conf中添加了以下行
net.ipv6.conf.all.forwarding=1
net.ipv6.conf.eth0.accept_ra=2
我的pfSense路由器上的隧道端点是aaaa:bbbb:my:ipv6 :: 10。
您的地址编辑使您无法理解您正在使用的子网划分方案。您是否尝试在两个接口上复制相同的前缀?为什么eth0配置为/ 48而不是/ 64?/ 64实际上是由提供商路由给您的,还是仅仅是一个链接范围?
—
grawity
@grawity - 当我部署VM时,使用netmask 48生成eth0 inet6配置,我没有打扰它。我的理解是,如果我的隧道端点与实际VM的IPv6子网在同一子网中,我将能够使用隧道从我的pfSense盒与VM的BGP邻居通信。此外,分配给VPS的/ 64是on-link我相信。
—
HotBreeze
不,在2或3个地方复制相同的子网绝对没有帮助路由...但是,你的主要问题是onlink分配。
—
grawity
我可以用任何方式使用on-link分配来建立这个隧道吗?我试图在Vultr上设置它,它提供BGP会话并且只进行链路上的分配。
—
HotBreeze
嗯,那些相当矛盾吗?如果您通过BGP通告自己的前缀,那么对等体将始终将其路由到您,因为这是BGP的全部要点。另一方面,如果您正在使用Vultr的地址空间,那么我不明白BGP是如何涉及的。
—
grawity