配置 IPv6 路由

配置 IPv6 路由

我从 SIXXS 获得了 IPv6 地址。我的主机通过 AICCU 隧道(“sixxs”接口)与 SIXXS 网络相连。我的主机地址是 2001:::2,末端主机的地址为2001:::1. 在我的主机上 IPv6 完全可访问。我在虚拟机上配置 IPv6 网络时遇到问题。我使用 VirtualBox,虚拟机 (Ubuntu) 使用 tap1(在由 br0 桥接的主机上)

#!/bin/sh

PATH=/sbin:/usr/bin:/bin:/usr/bin:/usr/sbin

# create a tap
tunctl -t tap1
ip link set up dev tap1

# create the bridge
brctl addbr br0
brctl addif br0 tap1

# set the IP address and routing
ip link set up dev br0
ip -6 route del 2001:6a0:200:172::/64 dev sixxs
ip -6 route add 2001:6a0:200:172::1 dev sixxs
ip -6 addr add 2001:6a0:200:172::2/64 dev br0
ip -6 route add 2001:6a0:200:172::2/64 dev br0

主机路由表:

2001:6a0:200:172::1 dev sixxs  metric 1024 
2001:6a0:200:172::/64 dev br0  proto kernel  metric 256 
2001:6a0:200:172::/64 dev br0  metric 1024 
2000::/3 dev sixxs  metric 1024 
fe80::/64 dev eth0  proto kernel  metric 256 
fe80::/64 dev sixxs  proto kernel  metric 256 
fe80::/64 dev br0  proto kernel  metric 256 
fe80::/64 dev tap1  proto kernel  metric 256 
default via 2001:6a0:200:172::1 dev sixxs  metric 1024

客户:接口eth1(与tap1连接):

auto eth1
iface eth1 inet6 static
address 2001:6a0:200:172::3
netmask 64
gateway 2001:6a0:200:172::2

访客:路由表

2001:6a0:200:172::/64 dev eth1 proto kernel metric 256
fe80::/64 dev eth0 proto kernel metric 256
fe80::/64 dev eth1 proto kernel metric 256
default via 2001:6a0:200:172::2 dev eth1 metric 1024

客户机 ping 主机,主机 ping 客户机,主机 ping 2001:6a0:200:172::1,但客户机不 ping 2001:6a0:200:172::1。客户机尝试 ping,在主机上(通过 tcdump)我可以捕获其数据包,但主机不会将它们发送到 2001:6a0:200:172::1。我在配置中遗漏了什么?

答案1

检查命令的输出

 sysctl -a | grep ipv6 | grep forward

这应该会显示您想要转发的所有网络的值 1。您应该能够使用以下命令启用转发:

sysctl net.ipv6.conf.all.forwarding=1

我会认真考虑设置一个 iptables 防火墙,这样你就不会将系统完全开放给 IPv6 互联网。与 IPv4 不同,你没有阻止入站连接的 NAT 设备。岸墙防火墙有一个 IPv6 版本,它应该可以让你轻松设置防火墙。示例双接口设置应该是一个很好的起点,可以设置为启用转发。

我的文章在 OpenWRT (Linux) 路由器上设置 IPv6可能会给你一些指点。将你的主机配置为路由器。

编辑:我查看了 SixXS 文档并验证了在隧道上只有 ::1(P0P 和 ::2(您的端点)地址有效。您应该已经获得了一个可以在网络上使用的“默认路由 /64”。为您的网桥分配一个地址。(传统上 ::1 地址是路由器。)您可能需要配置一个radvd守护进程来在内部网络上宣布路由。如果您使用radvd虚拟盒映像,则应该自动配置地址和路由。

如果您想要路由其他本地设备,请eth1根据需要将 或 eth0` 添加到网桥。

相关内容