我们有一个中等规模的网络,其中既有 IPv4,也有 IPv6,而我们的上游提供商正在让 IPv6 停用两周,同时他们要做……一些事情。(这是“实验性的”,我们不会为它付费,但它多年来一直很稳定,所以我们全面启用了它。)
我们的网络上有 150 台左右的主机,至少有十几种不同的操作系统,另外还有一个供人们使用手机和笔记本电脑的无线网络,因此在所有设备上禁用 IPv6 是行不通的。
我希望在故障转移到 IPv4 之前避免过多经典的 IPv6 不正常行为和长时间超时,并且我想知道最好的方法是什么。
- 我是否应该在边界阻止传出的 IPv6 数据包并返回无法访问的消息,或者这是否会导致主机被标记为无法访问而无需回退到 IPv4?
- 通过我们的 BIND 名称服务器禁用 AAAA 解析是否可行(如果可行,如何操作),如果可行,是否合理?
- 或者,关闭 RADVD 是否可行?我们确实在某些服务器上使用静态配置,但这样的服务器很少,因此无法手动执行这些操作。
答案1
我会关闭 RA 并手动禁用静态配置的主机。也可以设置隧道,但重新编号两次比暂时禁用它要麻烦得多。
如果您在 DNS 中宣传 IPv6 可达性(发布 AAAA 记录),那么您也应该暂时删除这些记录。不要忘记这些记录可能会被用户缓存,因此请在删除 AAAA 记录和禁用 IPv6 之间留出足够的时间。
答案2
对您的客户端来说,最简单的方法是使用 ipv6 隧道路由。如果您可以更新路由以便子网通过隧道,那就太棒了,但您可能必须使用 1:1 NAT 方法,将隧道提供商提供的子网映射到您现有的子网。您需要将路由核心配置为通过 v6 隧道发送 v6 流量,这样任何依赖它的东西都会继续工作,尽管可能比以前慢一点,但至少比 v4 故障恢复快。完全动态分配的子网可能不需要 1:1 NAT,但任何具有静态分配的东西可能都需要。