Red Hat Training

A Red Hat training course is available for RHEL 8

第5章 VLAN タグの設定

仮想ローカルエリアネットワーク (VLAN) は、物理ネットワーク内の論理ネットワークです。VLAN インターフェイスは、インターフェイスを通過する際に VLAN ID でパケットをタグ付けし、返信パケットのタグを削除します。VLAN インターフェイスを、イーサネット、ボンド、チーム、ブリッジデバイスなどの別のインターフェイスに作成します。これらのインターフェイスは parent interface と呼ばれます。

Red Hat Enterprise Linux は、VLAN デバイスを設定するためのさまざまなオプションを管理者に提供します。以下に例を示します。

  • nmcli を使用し、コマンドラインを使用して VLAN のタグ付けを設定します。
  • RHEL Web コンソールを使用し、Web ブラウザーを使用して VLAN のタグ付けを設定します。
  • nmtui を使用し、テキストベースのユーザーインターフェイスで VLAN のタグ付けを設定します。
  • nm-connection-editor アプリケーションを使用して、グラフィカルインターフェイスで接続を設定します。
  • nmstatectl を使用して、Nmstate API を介して接続を設定します。
  • RHEL システムロールを使用して、1 つまたは複数のホストで VLAN 設定を自動化します。

5.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 の自動設定がしばらくして失敗した場合に、インターフェイスがダウンする可能性があります。
  • ホストが接続するスイッチは、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 ethernet.mtu 2000
  4. IPv4 を設定します。

    • この VLAN デバイスを他のデバイスのポートとして使用するには、次のように入力します。

      # nmcli connection modify vlan10 ipv4.method disabled
    • DHCP を使用するために必要な操作はありません。
    • 静的 IPv4 アドレス、ネットワークマスク、デフォルトゲートウェイ、および DNS サーバーを vlan10 接続に設定するには、次のように入力します。

      # nmcli connection modify vlan10 ipv4.addresses '192.0.2.1/24' ipv4.gateway '192.0.2.254' ipv4.dns '192.0.2.253' ipv4.method manual
  5. IPv6 設定を行います。

    • この VLAN デバイスを他のデバイスのポートとして使用するには、次のように入力します。

      # nmcli connection modify vlan10 ipv6.method disabled
    • DHCP を使用するために必要な操作はありません。
    • 静的 IPv6 アドレス、ネットワークマスク、デフォルトゲートウェイ、および DNS サーバーを vlan10 接続に設定するには、次のように入力します。

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

    # nmcli connection up vlan10

検証

  • 設定を確認します。

    # 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:72:2f:6e 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