この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。
建築家
建築家
リスト
放送
茶屋
インテリジェントAI会話
.NETキャリア&テクニカルカレッジ
ちっちゃいなクズブログ
この版
利用者
Architect_Programmer_Code農業ネットワーク
»
建築家
›
その他の技術
›
ネットワーク技術
›
ネットワークカードも仮想化できますか? ネットワークカード仮想化技術 MacVLAN 詳細説明...
眺める:
4382
|
答える:
0
[出典]
ネットワークカードも仮想化できますか? ネットワークカード仮想化技術Macvlanの詳細な説明
[リンクをコピー]
クズども
掲載地 2022/11/19 11:01:57
|
|
|
|
01 マクヴラン入門
前回の記事では、いくつかのLinux仮想ネットワークデバイスについて触れました:tap/tun、veth-pair、bridge。これらは本質的にLinuxシステムが提供するネットワーク仮想化ソリューションであり、macvlanもその一つで、正確にはネットワークカード仮想化ソリューションです。 なぜならMacVlanの技術は
物理的なNICは仮想的に複数の仮想NICに変換されます
これは、物理的なネットワークカードが複数のシャドウクローンを1つから複数のものまで行う技術に相当します。
02 MacVLAN の仕組み
MacVlanはLinuxカーネルでサポートされる新機能で、サポートされているバージョンにはv3.9-3.19および4.0+が含まれ、より安定したバージョンには4.0+が推奨されます。 一般的にカーネル加群の形で存在し、現在のシステムがこれを支持しているかどうかは以下の方法で判断できます。
ログインが見えます。
最初のコマンドでエラーが出たり、2つ目のコマンドが返ってこない場合は、現在のシステムがMacVLANをサポートしておらず、カーネルのアップグレードが必要であることを意味します。
MacVLAN技術はVLANに少し似ていますが、実装の仕組みは全く異なります。 macVLANサブインターフェースは元のメインインターフェースから完全に独立しており、MACアドレスとIPアドレスで別々に設定できますが、VLANサブインターフェースとメインインターフェースは同じMACアドレスを共有します。 VLANはブロードキャストドメインを分割するために使われ、macvlanは同じブロードキャストドメインを共有します。
異なるサブインターフェースを通じて、MacVLANはトラフィック分離も実現できます。 MacVLANは、パケットの宛先のMACアドレスに基づいて、パケットをどの仮想NICに渡すべきかを決定し、仮想NICがパケットを上位層のプロトコルスタックに引き渡して処理します。
03 フォーモード
MacVLANサブインターフェース間の通信モードに応じて、MACVLANには4つのネットワークモードがあります。
プライベートモード
VEPA(バーチャルイーサネットポートアグリゲーター)モード
ブリッジモード
パススルーモード
デフォルトではVEPAモードが使用されます。
3.1 プライベート
このモードでは、同じプライマリインターフェース下にあるサブインターフェース同士が隔離され、通信ができません。 外部の物理スイッチから迂回しても、容赦なく廃棄されます。
3.2 ヴェパ
このモードでは、サブインターフェース間の通信は802.1Qbg/VPEA(物理的または仮想的)をサポートする外部スイッチに転送され、その外部スイッチを経由して転送され、その後戻る必要があります。
注:802.1Qbg/VPEA機能は、スイッチがヘアピン機能をサポートしなければならないことを意味します。つまり、データパケットはインターフェースから受信してから返送される必要があります。
3.3 ブリッジ
このモードではLinuxブリッジの機能をシミュレートしますが、ブリッジの良い点は各インターフェースのMACアドレスが既知で学習不要であることです。 したがって、このモードではサブインターフェース同士が直接通信できます。
3.4 パススルー
このモードでは、メインインターフェースへの接続は1つだけを許し、プロミスカウスモードに設定する必要があります。これは一般的にサブインターフェース間のブリッジやVLANサブインターフェースの作成に使用されます。
3.5 mactap
MacVLANに似たもう一つの技術はMacTapです。 macvlanとは異なり、mactapはパッケージを受け取りプロトコルスタックに渡しますが、tapXファイルを通じてユーザーとの直接通信を行います。
04 練習
Linux上で、macvlanを作成するコマンドは以下の通りです:
ログインが見えます。
一般的に、macVLANだけを使うのは意味がなく、ネットワークを構築するにはVMとコンテナの組み合わせが必要です。 名前空間を使ってLinuxがMacvlanをどのように使っているかを見てみましょう。
実験的位相は以下の通りです。
私のシステムでは、インターフェース enp0s8 を例に、2つの macvlan サブインターフェース(ブリッジモード使用)を作成し、IP を設定して2つの名前空間にハングして接続性をテストしました。
ログインが見えます。
注:enp0s8のIPアドレスは192.168.56.110/24であり、設定されたサブインターフェースのIPアドレスも同じCIDRセグメントからでなければなりません。
2つのサブインターフェースの後、次の方法でpingを送ります:
ログインが見えます。
ピンは検出できますが、上記のモードを別のモードに変えると動作しないので、皆さんに試してみてほしいです(デフォルトはVepaモードです)。
さらに、DockerではMacVLANがより重要なクロスホストネットワークモデルであり、これは次回の記事で詳しく説明します。
05 概要
MACVLANは、ネットワークカードを複数のネットワークカードに仮想化できるネットワークカード仮想化技術です。
MacVLANの4つの通信モードのうち、最も一般的なのはブリッジです。
考えてみて下さい:
マクヴラン橋と橋の類似点と相違点
複数の仮想ネットワークカードが同じMACアドレスを共有しつつ、独立したIPアドレスを持つ類似の技術もあります。
元の住所:
ハイパーリンクのログインが見えます。
先の:
実用的な操作方法:System.Web.Optimizationの代わりにBundleTransformerを使う
次に:
DockerはMacvlanを使ってコンテナ用の独立したIPアドレスを設定します
関連記事
•
.NET/C#は、CIDRアドレスに指定されたIPv4アドレスが含まれているかどうかを確認します
•
sing-boxでのTUICプロトコルチュートリアルを用いたサーバーセットアップ
•
AnyTLS(TLS in TLS)プロキシプロトコルの簡単なテスト
•
MikroTik(11) RouterOSは、CIDRブロックへのアクセスがpptpクライアントで行われることを指定しています
•
MikroTik(10)RouterOSはTorchを使ってリアルタイムトラフィックを解析します
•
Android aosp ソースコードコンパイルによるWIFIクロスの削除
•
LinuxはDanteをベースにしたSOCKSトラフィックプロキシサービスを構築しています
•
Linuxは指定されたプログラムネットワークへのアクセスプロキシにProxyChains4を使用しています
•
.NET/C#はAzure Translatorのテキスト翻訳インターフェースサービスを呼びます
•
Charles Proxy Scraping HTTPS パケットチュートリアル
閲覧したセクション
技術チャット
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。
Mail To:help@itsvse.com