AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1002230
Accepted
KumaTea
KumaTea
Asked: 2020-02-08 09:24:10 +0800 CST2020-02-08 09:24:10 +0800 CST 2020-02-08 09:24:10 +0800 CST

不支持的地址方法“v4tunnel”

  • 772

我正在尝试创建通往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:添加一张netplan的图片:

点击这里


结论:问题是由ifupdown2.

ubuntu ipv6 tunnel
  • 1 1 个回答
  • 769 Views

1 个回答

  • Voted
  1. Best Answer
    A.B
    2020-02-09T08:30:48+08:002020-02-09T08:30:48+08:00

    ifupdown与ifupdown2

    从您的错误消息中,您使用的是包ifupdown2而不是ifupdown。两者都在 Ubuntu 上可用,但在线手册页只显示一个版本,我猜是默认安装的,这可以解释为什么你最终使用ifupdown2。

    • Ubuntu 16.04 LTS:接口(5)

      提供者:ifupdown_0.8.10ubuntu1_amd64
      [...]

      作者
      ifupdown 套件由 Anthony Towns <[email protected]> 编写。

    • Ubuntu 18.04 LTS:接口(5)

      提供者:ifupdown2_1.0~git20170314-1_all
      [...]

      作者
      Roopa Prabhu <[email protected]>

    虽然ifupdown2是Cumulus Networks 开发的ifupdown 的替代品,但改进了对现代网络功能的支持,但存在一些语法不兼容。

    所以要么安装ifupdown而不是ifupdown2,要么调整配置,我在下面给出。


    什么隧道?

    原来的ifupdown提供了v4tunnel 方法:

    v4tunnel 方法

    此方法可用于建立 IPv6-over-IPv4 隧道。它需要 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
    

    所以我们知道这是一个SIT隧道。


    使用ifupdown2

    包ifupdown2不提供v4tunnel方法,并且缺少替换方法的文档,该替换tunnel方法应该已经描述man ifupdown-addons-interfaces但没有。它仍然可以从ifquery --syntax-help. 这是一段摘录(来自 Ubuntu 18.04 的版本):

    tunnel: create/configure GRE/IPIP/SIT tunnel interfaces
    [...]
      endpoint
        help: IP of remote tunnel endpoint
        required: True
        validvals: <ipv4>,<ipv6>
        example:
          endpoint 192.2.0.23
      local
        help: IP of local tunnel endpoint
        required: True
        validvals: <ipv4>,<ipv6>
        example:
          local 192.2.0.42
      mode
        help: type of tunnel as in 'ip link' command.
        required: True
        validvals: greipip,sit
        example:
          mode gre
      ttl
        help: TTL for tunnel packets
        required: False
        validvals: <number>
        example:
          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

    • 3

相关问题

  • 无法通过 Ubuntu VPN 访问外部网络

  • ubuntu apt-get upgrade - 如何在 shell 中单击确定?

  • VirtualBox 上 Ubuntu 的访客优化技巧 [关闭]

  • 外部硬盘上的 virtualbox 虚拟硬盘驱动器(Vista 主机上的 ubuntu 客户机)

  • 如何在 Ubuntu 上挂载 LVM 分区?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve