web-dev-qa-db-ja.com

サポートされていないアドレスメソッド 'v4tunnel'

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つの別々のマシンで試したところ、結果は同じです。)


更新:詳細の画像を追加:

Click this


更新2:ネットプランの写真を追加します。

Click this


結論:問題はifupdown2

3
KumaTea

ifupdownifupdown2

エラーメッセージから、 ifupdown ではなく、パッケージ ifupdown2 を使用しています。どちらもUbuntuで利用できますが、オンラインマンページには1つのバージョンしか表示されません。デフォルトがインストールされていると思います。これが、なぜifupdown2を使用したのかを説明します。

ifupdown2ifupdownの代わりになりましたが、Cumulus Networks によって開発されましたが、最新のネットワーク機能のサポートが改善されていますが、構文に互換性がありません。

したがって、ifupdown2の代わりにifupdownをインストールするか、構成を調整します。


何のトンネル?

元のifupdownv4tunnel method を提供します:

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メソッドを提供せず、 man ifupdown-addons-interfaces で説明されている置換tunnelメソッドのドキュメントがありませんが、ではありません。それは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

modeの値にタイプミスがあることに注意してください(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キーワードを使用してトンネルのタイプを指定することです。

2
A.B