我将Server 2012 R2 RRAS设置为SSTP VPN。 我已经完成了IPv4的工作。 我的环境是双栈(v4和v6)。 当我在VPN上启用IPv6时,我的客户端将获得一个有效的地址,但无法通过使用IPv6的VPN与任何东西进行通信。 如果我ping一个计算机名称,它会得到ipv6地址,但超时在哪里,如果我用-4 ping它,它会得到v4地址,并ping完美。 这几天我一直在嘲笑我的头脑,而我试过的或者任何networkingsearch都没有指出我的解决scheme。 我开始怀疑VPN是否需要为IPv6隧道打开另一个端口?
我已经在RRAS的常规选项卡上启用了IPv6路由器(局域网和请求拨号)和IPv6删除访问服务器选项,并在IPv6选项卡上指定了一个前缀。 我已经尝试了前缀是它自己的私人前缀,并使用相同的前缀在networking上使用。
有没有其他人有这个工作? 我有一种感觉,这可能是我错过的某个地方。 或者不是通过ipv4 vpn发送ipv6stream量,而是需要在一台客户端机器上同时拥有ipv4和ipv6,以便ipv6在vpn上运行?
我以为我会为不使用pfSense的用户提供更通用的Linux路由器场景,而是使用基于Linux的路由器(在我的情况下是DD-WRT)。
ip -6 route add xxxx:xxx:xxxx:xxxx::/64 via xxxx:xxx:xxxx:xx::x dev br0
br0是你的路由器的LAN接口。 这通常是DD-WRT的默认设置,对于其他路由器,它可能是eth0等其他接口 我发现的唯一问题是,当这个静态路由允许IPv6stream量stream向外部时,它不提供对服务器的LAN IP地址的IPv6子网内的其他LAN IPv6地址的访问。 可能是因为子网是不同的/ 64。 为了解决这个问题,你需要在RRAS盒子上添加IPv6静态路由来实现这种连接。
事实certificate,这是一件小事,它以一种完全不同的方式来看待这个问题。
问题不在于RRAS与我的路由器软件设置(在这种情况下是pfSense)。 当在VPN连接的客户端上,我得到一个IPv6地址,名称parsing正在工作,但是没有任何响应通过IPv6。 问题是我的v6数据包会进入我的networking,但是本地机器没有任何有关如何返回到VPN连接的机器的路由信息。 我必须在我的路由器中为RRAS中使用的前缀设置静态路由,以便将我的networking上的前缀路由回RRAS框。 现在,当内部盒子试图回话时,它会看到不同的前缀,并将其发送到我的路由器,然后我的路由器将它转发给RRAS,然后将它发送到VPN连接的客户端。
当然花了很长时间来跟踪这个,但终于工作了。