CentOS/RHEL システムで VLAN タグ付きイーサネット カードを使用する方法

CentOS/RHEL システムで VLAN タグ付きイーサネット カードを使用する方法

シナリオによっては、Linux サーバー (CentOS/RHEL) の同じイーサネット カード (NIC) 上の異なる VLAN から複数の IP を割り当てる必要があります。これは、VLAN タグ付きインターフェースを使用することで実現できます。しかし、これを行うには、複数のVLANがスイッチポートに接続されていることを確認する必要があります。つまり、複数のVLANをスイッチに追加して設定することができます。集約ポートトランクポート(LCTT翻訳注:一般的には集約ポートトランクポートアクセスポートアクセスポートハイブリッドポートハイブリッドポート3種類あります。

Linux サーバーがあり、2 つのイーサネット カード ( enp0s3enp0s8 ) があると仮定します。最初のカード ( enp0s3 ) はデータ転送に使用され、2 番目のカード ( enp0s8 ) は制御/トラフィック管理に使用されます。データ転送には複数の VLAN を使用します (または、データ トラフィック NIC 上の異なる VLAN から複数の IP を割り当てます)。

サーバーのデータ NIC に接続されているポートは、複数の VLAN をマッピングして集約ポートとして構成されていると想定しています。

以下は、データ転送ネットワーク インターフェイス カード (NIC) にマップされる VLAN です。

  • VLAN ID (200)、VLAN N/W = 172.168.10.0/24
  • VLAN ID (300)、VLAN N/W = 172.168.20.0/24

CentOS 7 / RHEL 7 / CentOS 8 / RHEL 8 システムで VLAN タグ付きインターフェースを使用するには、カーネル モジュール8021qロードする必要があります。

カーネルモジュール8021qをロードするには、次のコマンドを使用します。

[root@linuxtechi ~]# lsmod | grep -i 8021q
[root@linuxtechi ~]# modprobe --first-time 8021q
[root@linuxtechi ~]# lsmod | grep -i 8021q
8021q 29022 0
ガープ 14384 1 8021q
mrp 18542 1 8021q
[root@linuxtechi ~]#

modinfoコマンドを使用して、カーネル モジュール8021qの詳細情報を表示できます。

[root@linuxtechi ~]# modinfo 8021q
ファイル名: /lib/modules/3.10.0-327.el7.x86_64/kernel/net/8021q/8021q.ko
バージョン: 1.8
ライセンス: GPL
エイリアス: rtnl-link-vlan
rhelバージョン: 7.2
ソースバージョン: 2E63BD725D9DC11C7DA6190
依存: mrp、garp
インツリー: Y
vermagic: 3.10.0-327.el7.x86_64 SMP mod_unload modversions
署名者: CentOS Linux カーネル署名キー
署名キー: 79:AD:88:6A:11:3C:A0:22:35:26:33:6C:0F:82:5B:8A:94:29:6A:B3
sig_hashalgo: sha256
[root@linuxtechi ~]#

ここで、ip コマンドを使用して、VLAN 200および300 enp0s3ネットワーク カードにタグ付け (またはマップ) します。

(LCTT 翻訳メモ: これは、まず VLAN タグ200 enp0s3ネットワーク カードにマップすることです。)

[root@linuxtechi ~]# ip link add link enp0s3 name enp0s3.200 type vlan id 200

インターフェイスを開くには、次のipコマンドを使用します。

[root@linuxtechi ~]# ip link set dev enp0s3.200 up

同様に、VLAN タグ300 enp0s3ネットワーク カードにマップします。

[root@linuxtechi ~]# ip link add link enp0s3 name enp0s3.300 type vlan id 300
[root@linuxtechi ~]# ip link set dev enp0s3.300 up

次に、 ipコマンドを使用して、マークされたインターフェースのステータスを表示します。

次のipコマンドを使用して、それぞれの VLAN からタグ付きインターフェースに IP アドレスを割り当てることができます。

[root@linuxtechi ~]# ip addr 172.168.10.51/24 dev enp0s3.200 を追加します
[root@linuxtechi ~]# ip addr 172.168.20.51/24 dev enp0s3.300 を追加します

次のipコマンドを使用して、マークされたインターフェースに IP が割り当てられているかどうかを確認します。

再起動後、上記のipコマンドで行った変更はすべて保持されません (LCTT 翻訳注: 変更は構成ファイルまたはデータベースに保存できます。保存プロセスが実行されない場合、現在の環境のみが有効になり、再起動後に構成は無効になります)。これらのマークされたインターフェースはservice network restart (LCTT 翻訳注: service network restart、またはdownコマンドとupコマンド) 後に使用できなくなります。

したがって、マークされたインターフェースを再起動後も維持するには、インターフェースのifcfgファイルを使用する必要があります。

インターフェース ( enp0s3 ) ファイル/etc/sysconfig/network-scripts/ifcfg-enp0s3を編集し、次の内容を追加します。

著者の注意: ご使用の環境のインターフェース名に置き換えてください。

[root@linuxtechi ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
タイプ=イーサネット
デバイス=enp0s3
BOOTPROTO=なし
ONBOOT=はい

ファイルを保存して終了します。

VLAN ID 200のインターフェース ファイル/etc/sysconfig/network-scripts/ifcfg-enp0s3.200を作成し、次の内容を追加します。

[root@linuxtechi ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3.200
デバイス=enp0s3.200
BOOTPROTO=なし
ONBOOT=はい
IPアドレス=172.168.10.51
プレフィックス=24
ネットワーク=172.168.10.0
VLAN=はい

ファイルを保存して終了します。

同様に、VLAN ID 300のインターフェース ファイル/etc/sysconfig/network-scripts/ifcfg-enp0s3.300を作成し、次の内容を追加します。

[root@linuxtechi ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3.300
デバイス=enp0s3.300
BOOTPROTO=なし
ONBOOT=はい
IPアドレス=172.168.20.51
プレフィックス=24
ネットワーク=172.168.20.0
VLAN=はい

ファイルを保存して終了します。この時点で、次のコマンドを使用してネットワークサービスを再起動します。

[root@linuxtechi ~]# systemctl ネットワークを再起動します

次に、次のipコマンドを使用して、マークされたインターフェースが設定され、起動され、実行されていることを確認します。

CentOS/RHEL システムで VLAN タグ付きのイーサネット カードを使用する方法については、これで終わりです。CentOS システムで VLAN タグ付きのイーサネット カードを使用する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • VMware CentOS 仮想マシンのインストールとネットワーク構成のグラフィックチュートリアル
  • Centos7.3は起動時に自動的に起動または指定されたコマンドを実行します
  • RedHat RHEL7.2 システムを vmware12 にインストールする詳細な手順 (画像とテキスト)
  • Linux仮想ネットワークデバイスのVLAN構成の詳細な説明
  • ブレイクアウトVLAN
  • VLAN内のDHCPドメインについて

<<:  HTML テーブル タグ チュートリアル (47): ネストされたテーブル

>>:  Mysqlのマージ結果と水平スプライシングフィールドの実装手順

推薦する

Dockerはelasticsearchイメージを起動し、ディレクトリをマウントした後にエラーを解決します

docker hub から es イメージ (バージョン 6.4.2) をダウンロードしました。詳細...

ドッカー専用倉庫港湾建設プロセス

1. 準備1.1 港ダウンロードハーバーダウンロードアドレス:リンクリンクの説明を追加し、必要なバー...

WebデザイナーがRetinaディスプレイデバイス向けの画像を作成する方法

特記事項:この記事は、Chris Spooner の英語記事「Web デザイン用の Retina グ...

Vueはログイン認証コードを実装する

この記事では、ログイン認証コードを実装するためのvueの具体的なコードを例として紹介します。具体的な...

MySQL マスタースレーブレプリケーションの実践の詳細説明 - ログポイントに基づくレプリケーション

ログポイントベースのレプリケーション1. マスターデータベースとスレーブデータベースに専用のレプリケ...

MySQL 8.0.23 インストールの超詳細なチュートリアル

目次序文1. 公式サイトからMySQLをダウンロードする2. 解凍ファイルを設定する3. 初期化4....

CentOS7.x のアンインストールとインストール MySQL5.7 の操作手順とエンコード形式の変更方法

1. MySQL 5.7 のアンインストール1.1查看yum是否安裝過mysql CD yum li...

ウェブページを白黒に変換します(Google、Firefox、IE、その他のブラウザと互換性があります)

CSSファイルに書き込むコードをコピーコードは次のとおりです。 01.html {グレイスケール(1...

Linux でジャンプ サーバー経由でリモート サーバーに接続し、ファイルを転送する方法

最近、Linux ホストに環境を展開する際に多くの問題に遭遇しました。最初の問題は、ジャンプ サーバ...

MySQL 8.0.15 圧縮版インストール グラフィック チュートリアル

この記事では、参考までにMySQL 8.0.15圧縮版のインストール方法を紹介します。具体的な内容は...

vueはEle.me UIを使用してteambitionのフィルタリング機能を模倣します

目次問題の説明一般的な機能効果は次のとおりです。思考分析完全なコード要約する問題の説明Teambit...

Linux 上で Docker コンテナを作成、一覧表示、削除する方法の概要

1. Dockerコンテナを起動する以下のコマンドを使用して新しい Docker コンテナを起動しま...

HTMLでは、div内のコンテンツが次のサイズを超えたときに自動的にスクロールバーが表示されるように設定します。

HTML ページでは、div 内のコンテンツが制限を超えた後に自動的にスクロール バーを表示する必要...

Web デザイン スキル: iframe の適応高さの問題

おそらく、この問題にまだ遭遇していない人もいるでしょうから、まずは適応高さとは何かを説明しましょう。...

iframeフレームはIEブラウザで白い背景を透明に設定します

最近、プロジェクトを進める過程で、ページの階層構造を描画するために iframe を頻繁に使用する必...