9.3. IPv4 でイーサネットフレームを転送するための GRETAP トンネルの設定
GRETAP (Generic Routing Encapsulation Terminal Access Point) トンネルは OSI レベル 2 で動作し、RFC 2784 で説明されているように IPv4 パケットのイーサネットトラフィックをカプセル化します。
GRETAP トンネルを介して送信されるデータは暗号化されません。セキュリティー上の理由から、VPN または別の暗号化された接続にトンネルを確立します。
たとえば、以下の図に示すように、2 つの RHEL ルーター間で GRETAP トンネルを作成し、ブリッジを使用して 2 つのネットワークに接続します。
前提条件
- 各 RHEL ルーターには、ローカルネットワークに接続されたネットワークインターフェイスがあり、IP 設定は割り当てられません。
- 各 RHEL ルーターには、インターネットに接続しているネットワークインターフェイスがあります。
手順
ネットワーク A の RHEL ルーターで、次のコマンドを実行します。
bridge0
という名前のブリッジインターフェイスを作成します。# nmcli connection add type bridge con-name bridge0 ifname bridge0
ブリッジの IP 設定を設定します。
# nmcli connection modify bridge0 ipv4.addresses '192.0.2.1/24' # nmcli connection modify bridge0 ipv4.method manual
ローカルネットワークに接続されたインターフェイス用の新しい接続プロファイルをブリッジに追加します。
# nmcli connection add type ethernet port-type bridge con-name bridge0-port1 ifname enp1s0 controller bridge0
GRETAP トンネルインターフェイスの新しい接続プロファイルをブリッジに追加します。
# nmcli connection add type ip-tunnel ip-tunnel.mode gretap port-type bridge con-name bridge0-port2 ifname gretap1 remote 198.51.100.5 local 203.0.113.10 controller bridge0
remote
パラメーターおよびlocal
パラメーターは、リモートルーターおよびローカルルーターのパブリック IP アドレスを設定します。重要gretap0
デバイス名が予約されています。デバイスにgretap1
または別の名前を使用します。オプション: STP (Spanning Tree Protocol) を無効にする必要がない場合は、これを無効にします。
# nmcli connection modify bridge0 bridge.stp no
デフォルトでは、STP は有効になり、接続を使用する前に遅延が生じます。
bridge0
接続がアクティベートするように、ブリッジのポートが自動的にアクティブになるようにします。# nmcli connection modify bridge0 connection.autoconnect-ports 1
bridge0
接続をアクティブにします。# nmcli connection up bridge0
ネットワーク B の RHEL ルーターで、次のコマンドを実行します。
bridge0
という名前のブリッジインターフェイスを作成します。# nmcli connection add type bridge con-name bridge0 ifname bridge0
ブリッジの IP 設定を設定します。
# nmcli connection modify bridge0 ipv4.addresses '192.0.2.2/24' # nmcli connection modify bridge0 ipv4.method manual
ローカルネットワークに接続されたインターフェイス用の新しい接続プロファイルをブリッジに追加します。
# nmcli connection add type ethernet port-type bridge con-name bridge0-port1 ifname enp1s0 controller bridge0
GRETAP トンネルインターフェイスの新しい接続プロファイルをブリッジに追加します。
# nmcli connection add type ip-tunnel ip-tunnel.mode gretap port-type bridge con-name bridge0-port2 ifname gretap1 remote 203.0.113.10 local 198.51.100.5 controller bridge0
remote
パラメーターおよびlocal
パラメーターは、リモートルーターおよびローカルルーターのパブリック IP アドレスを設定します。オプション: STP (Spanning Tree Protocol) を無効にする必要がない場合は、これを無効にします。
# nmcli connection modify bridge0 bridge.stp no
bridge0
接続がアクティベートするように、ブリッジのポートが自動的にアクティブになるようにします。# nmcli connection modify bridge0 connection.autoconnect-ports 1
bridge0
接続をアクティブにします。# nmcli connection up bridge0
検証
両方のルーターで、
enp1s0
接続およびgretap1
接続が接続され、CONNECTION
列にポートの接続名が表示されていることを確認します。# nmcli device nmcli device DEVICE TYPE STATE CONNECTION ... bridge0 bridge connected bridge0 enp1s0 ethernet connected bridge0-port1 gretap1 iptunnel connected bridge0-port2
各 RHEL ルーターから、他のルーターの内部インターフェイスの IP アドレスに ping します。
ルーター A で
192.0.2.2
に ping します。# ping 192.0.2.2
ルーター B で
192.0.2.1
に ping します。# ping 192.0.2.1