我正在尝试创建一个通往HE.net的隧道,以便在我的(云)服务器上获得一个IPv6地址。
当我创建隧道并将其放入/etc/network/interfaces中时:
auto he-ipv6
iface he-ipv6 inet6 v4tunnel
address <my IPv6 address>
netmask 64
endpoint 66.220.7.82
local <my IPv4 address>
ttl 255
gateway <my gateway>然后是ifup he-ipv6,我得到了:
error: /etc/network/interfaces: line5: iface he-ipv6: unsupported address method 'v4tunnel'我怎么才能解决这个问题?
操作系统是Ubuntu 18.04.3。
)我试图搜索这个错误,但似乎从来没有人有过这个错误。但是我在两台独立的机器上试用了不同的提供商,结果是一样的。)
更新:添加图片以获取详细信息:

更新2:添加网络计划的图片:

结论:该问题是由ifupdown2引起的。
发布于 2020-02-08 16:30:48
根据您的错误消息,您使用的是包ifupdown2而不是ifupdown。这两种方法都可以在Ubuntu上使用,但是在线手册只显示了一个版本,我猜是默认安装的,这将解释为什么您最终使用了ifupdown2。
虽然ifupdown2是ifupdown 利用积云网络开发的替代品,它改进了对现代网络特性的支持,但也存在一些语法不兼容问题。
所以,要么安装ifupdown而不是ifupdown2,要么调整配置,我将在下面给出。
最初的ifupdown提供了V4隧道法:
v4tunnel方法这种方法可以用来建立IPv6 6-over IPv6 4隧道。它需要来自iproute包的ip命令。
ifupdown设置运行以下实际命令:
ip tunnel add he-ipv6 mode sit remote 66.220.7.82 local <my IPv4 address> ttl 255
ip link set he-ipv6 up
ip addr add <my IPv6 address> dev he-ipv6
ip route add <my gateway> dev he-ipv6
ip route add ::/0 via <my gateway> dev he-ipv6 onlink所以我们知道这是一个坐隧道。
使用
包ifupdown2没有提供一个v4tunnel方法,并且缺乏替换tunnel方法的文档,该方法本应在man ifupdown-addons-interfaces中描述,但实际上并非如此。它仍然可以从ifquery --syntax-help获得。以下是一段摘录(摘自Ubuntu 18.04's版):
隧道:创建/配置GRE/IPIP/SIT隧道接口...端点帮助:所需远程隧道端点的IP :真验证:,示例:端点192.2.0.23本地帮助:本地隧道端点所需的IP :真正验证:,示例:Local192.2.0.42模式帮助:“ip链路”命令中的隧道类型。所需:真验证: greipip,sit示例:模式gre ttl帮助:所需隧道数据包的TTL :假验证:示例: ttl 64
注意,模式值中有一个错误(应该是gre,ipip,sit)。较新的版本将处理更多的模式(无论如何,我们已经有可用的sit ):
validvals: gre,gretap,ipip,sit,vti,ip6gre,ipip6,ip6ip6,vti6
它提供了以下工作配置:
auto he-ipv6
iface he-ipv6 inet6 tunnel
mode sit
address <my IPv6 address>
netmask 64
endpoint 66.220.7.82
local <my IPv4 address>
ttl 255
gateway <my gateway>区别在于泛型tunnel方法,以及使用mode关键字指定隧道的类型。
https://serverfault.com/questions/1002230
复制相似问题