OpenBSD默认网关外部子网

我的ISP默认提供IPv6。 但是,我的ISP的IPv6设置看起来有点奇怪,因为默认的IPv6网关位于我的服务器子网之外。 在linux下,可以使用ip -6 route add <gateway ip> dev <interface>设置一个到该网关的静态路由。 然而,这不能在openbsd上工作,有没有人知道在openbsd上该命令的等价物,还是有人知道另一种方法来解决这个问题?

将以下内容添加到/etc/rc.conf中:

 ipv6_defaultrouter="<v6-gateway-ip>" 

然后重新启动或运行重置networking

 /etc/rc.d/network_ipv6 restart 

或者你可以手工做到这一点:

  route -n add -inet6 default <v6-gateway-ip> 

我知道有三种方法来解决这个问题:

  • find网关的另一个IPv6地址。 它可能有多个分配给接口。 只要邻居发现可以将其parsing为正确的MAC地址,您使用哪一个作为网关就没有任何区别。
  • 添加一条静态路由,指定包含该MAC地址的前缀直接连接到给定的以太网接口。 即使您没有自己的地址,也应该可以工作。 你应该使用一个/ 128的静态路由,除非你有一个非常具体的理由否则。
  • 为网关组成一个IPv6地址,并手动将其插入到邻居caching中。 如果您知道网关的MAC地址,并且它保持不变,则此方法仅适用。 这应该适用于任何可以手动创build邻居caching条目的操作系统,但是我只在Linux上进行了testing。

这看起来像一个可能的networking错误configuration。 路由器公告中携带IPv6中每个网段的默认路由器。 看看他们在RA中给你什么,它应该是一个链路层(fe80:…)IPv6地址。

如上所述,你可以超越,但你不应该这样做。