![Ubuntu 17.10 中的 ipv6 隧道?](https://linux22.com/image/1152664/Ubuntu%2017.10%20%E4%B8%AD%E7%9A%84%20ipv6%20%E9%9A%A7%E9%81%93%EF%BC%9F.png)
我以前能够毫无问题地进行以下配置,/etc/network/interfaces
但现在却无法使用了。我现在该如何配置 ipv6 隧道?我看到了新的 netplan 软件来配置接口,但我似乎找不到与下面的命令等效的命令
auto he-ipv6
iface he-ipv6 inet6 v4tunnel
address 2001:550:120e:6b7::2
netmask 64
endpoint 184.105.253.10
local my.public.ip.addr
ttl 255
gateway 2001:550:120e:6b7::1
如何配置 Ubuntu 以便在下次重启时永久保留此配置?
答案1
我想到了。
我创建了以下文件:
/etc/systemd/network/he-ipv6.network
[Match]
[Network]
Tunnel=he-ipv6
/etc/systemd/network/he-ipv6-tunnel.netdev
[Match]
[NetDev]
Name=he-ipv6
Kind=sit
[Tunnel]
Independent=true
Local=192.168.0.x #Private IP if behind NAT or Public IP without NAT
Remote=184.105.250.46 #Tunnel broker's IPv4 address
TTL=255
/etc/netplan/01-netcfg.yaml
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
he-ipv6:
dhcp4: no
dhcp6: no
addresses: ['2001:470:xxx:xxx::2/64']
gateway6: 2001:470:xxx:xxx::1
enp0s3:
...
2001:470:xxx:xxx::2/64
您的客户端 IP 地址来自 tunnelbroker.net 吗?
然后重新启动或重新启动网络systemctl restart systemd-networkd && netplan apply
更新/警告除非您已经在使用 Ubuntu Bionic Beaver 或者具体来说是 Systemd 版本 235,否则这将不起作用。你需要[Tunnel] 下的标志Independent
使此配置在每次重启时与 systemd 版本 235 一起起作用。
此Independent
标志在 systemd 版本 234 及以下版本中不起作用。您可以使用以下命令检查您的 systemd 版本systemd --version
答案2
使用 Ubuntu 22.04 Lts 非常简单,因为 netplan 内置了 4to6 sit 隧道支持。例如,从 Oracle Cloud(在 Oracle NAT 后面)到 Hurricane Tunnel Broker Paris 的隧道。创建 /etc/netplan/60-tunnel-he-ipv6.yaml
network:
version: 2
tunnels:
he-ipv6:
mode: sit
remote: 216.66.84.42 #HE Paris ip4 enpoint
local: 10.0.0.242 #local ipv4 address (mine is behind nat)
addresses:
- "2001:470:001:002::2/64" #your ipv6 endpoint
routes:
- to: default
via: "2001:470:001:002::1" #HE Tunnel ipv6 endpoint
下一步简单问题
sudo netplan try
如果没有错误,则接受配置
答案3
代码:
modprobe ipv6
ip tunnel add he-ipv6 mode sit remote xxx.xxx.xxx.xxx local xxx.xxx.xxx.xxx ttl 255
ip link set he-ipv6 up
ip addr add 2001:470:1f10:d47::2/64 dev he-ipv6
ip route add ::/0 dev he-ipv6
ip -f inet6 addr
从 root shell 中,剪切并粘贴命令块。modprobe 确保内核已加载 ipv6 支持。“ip tunnel ...” 创建点对点隧道,使用 NAT 路由器/防火墙/调制解调器的外部 IPv4 地址作为本地端,使用选定的中继作为远程端,中继将在此进行。“ip link ...”
应该是不言自明的;它打开隧道。
“ip addr add ...” 配置主机正在使用的 IPv6 地址。
“ip route add” 配置指向隧道的默认 v6 路由,以便任何前往一般互联网的 v6 流量都知道要去哪里。