Red Hat Training

A Red Hat training course is available for RHEL 8

第10章 VLAN タグの設定

本セクションでは、仮想ローカルエリアネットワーク (VLAN) を設定する方法を説明します。VLAN は、物理ネットワーク内の論理ネットワークです。VLAN インターフェースは、インターフェースを通過する際に VLAN ID でパケットをタグ付けし、返信パケットのタグを削除します。

VLAN インターフェースを、イーサネット、ボンド、チーム、ブリッジデバイスなどの別のインターフェースに作成します。このインターフェースは、親インターフェース と呼ばれます。

10.1. nmcli コマンドによる VLAN タグ付けの設定

本セクションでは、nmcli ユーティリティーを使用して、仮想ローカルエリアネットワーク (VLAN) のタグ付けを設定する方法を説明します。

前提条件

  • 仮想 VLAN インターフェースに対する親として使用するインターフェースが VLAN タグに対応している。
  • ボンドインターフェースに VLAN を設定する場合は、以下のようになります。

    • ボンディングのポートが起動している。
    • ボンドが、fail_over_mac=follow オプションで設定されていない。VLAN 仮想デバイスは、親の新規 MAC アドレスに一致する MAC アドレスを変更できません。このような場合、トラフィックは間違ったソースの MAC アドレスで送信されます。
    • ボンディングは通常、DHCP または IPv6 の自動設定経由で IP アドレスを取得するわけではありません。ボンディングの作成時に ipv4.method=disable オプションおよび ipv6.method=ignore オプションを設定してください。そうでない場合には、ボンディングの作成時に、しばらくすると DHCP/IPv6-autoconf で問題が発生して、インターフェースが停止する可能性があります。
  • ホストが接続するスイッチは、VLAN タグに対応するように設定されています。詳細は、スイッチのドキュメントを参照してください。

手順

  1. ネットワークインターフェースを表示します。

    # nmcli device status
    DEVICE   TYPE      STATE         CONNECTION
    enp1s0   ethernet  disconnected  enp1s0
    bridge0  bridge    connected     bridge0
    bond0    bond      connected     bond0
    ...
  2. VLAN インターフェースを作成します。たとえば、VLAN インターフェース vlan10 を作成し、enp1s0 を親インターフェースとして使用し、VLAN ID 10 のタグパケットを作成するには、次のコマンドを実行します。

    # nmcli connection add type vlan con-name vlan10 ifname vlan10 vlan.parent enp1s0 vlan.id 10

    VLAN は、0 から 4094 の範囲内に存在する必要があります。

  3. デフォルトでは、VLAN 接続は、親インターフェースから最大伝送単位 (MTU) を継承します。必要に応じて、別の MTU 値を設定します。

    # nmcli connection modify vlan10 802-3-ethernet.mtu 2000
  4. VLAN デバイスの IP 設定を構成します。この VLAN デバイスを他のデバイスのポートとして使用する場合は、この手順を省略します。

    1. IPv4 設定を構成します。たとえば、静的 IPv4 アドレス、ネットワークマスク、デフォルトゲートウェイ、および DNS サーバーを vlan10 接続に設定するには、次のコマンドを実行します。

      # nmcli connection modify vlan10 ipv4.addresses '192.0.2.1/24'
      # nmcli connection modify vlan10 ipv4.gateway '192.0.2.254'
      # nmcli connection modify vlan10 ipv4.dns '192.0.2.253'
      # nmcli connection modify vlan10 ipv4.method manual
    2. IPv6 設定を構成します。たとえば、静的 IPv6 アドレス、ネットワークマスク、デフォルトゲートウェイ、および DNS サーバーを vlan10 接続に設定するには、次のコマンドを実行します。

      # nmcli connection modify vlan10 ipv6.addresses '2001:db8:1::1/32'
      # nmcli connection modify vlan10 ipv6.gateway '2001:db8:1::fffe'
      # nmcli connection modify vlan10 ipv6.dns '2001:db8:1::fffd'
      # nmcli connection modify vlan10 ipv6.method manual
  5. 接続をアクティベートします。

    # nmcli connection up vlan10

検証手順

  1. 設定を確認します。

    # ip -d addr show vlan10
    4: vlan10@enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
        link/ether 52:54:00:d5:e0:fb brd ff:ff:ff:ff:ff:ff promiscuity 0
        vlan protocol 802.1Q id 10 <REORDER_HDR> numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535
        inet 192.0.2.1/24 brd 192.0.2.255 scope global noprefixroute vlan10
           valid_lft forever preferred_lft forever
        inet6 2001:db8:1::1/32 scope global noprefixroute
           valid_lft forever preferred_lft forever
        inet6 fe80::8dd7:9030:6f8e:89e6/64 scope link noprefixroute
           valid_lft forever preferred_lft forever

関連情報

  • 接続テストの詳細は、「基本的なネットワーク設定のテスト」を参照してください。
  • 接続にデフォルトゲートウェイがない場合は、「NetworkManager の設定」を参照して、特定のプロファイルを使用してデフォルトゲートウェイが指定されないようにします。
  • nmcli の例は、man ページの nmcli-examples(7) を参照してください。
  • 設定可能なすべての vlan プロパティーは、man ページの nm-settings (5)vlan setting セクションを参照してください。