さまざまなプロセスにさまざまな仮想ネットワークインターフェイスを使用する方法は?

さまざまなプロセスにさまざまな仮想ネットワークインターフェイスを使用する方法は?

非仮想ネットワークインターフェイスのソリューションは次のとおりです。https://unix.stackexchange.com/a/210992

しかし、問題は、あるネットワークインターフェースに複数のIPがあり、各IPを別のアプリケーションに割り当てることができることです。

たとえば、eth0:0、eth0:1などがあります。

コマンドを実行するとき(仮想インターフェイスを参照):

ip link set eth0:0 netns test_ns

eth0:0の代わりにeth0 ipが必要です。また、インターフェイス全体を削除し、パブリックソースから接続することはできません。

共通ソースからサーバーにアクセスしながら、さまざまなプロセスに仮想ネットワークインターフェイスを使用する方法はありますか?

ベストアンサー1

同様のインターフェイス名は、eth0:0他のインターフェイス(「仮想または非仮想」)を表しませんが、同じインターフェイスのエイリアスです。エイリアスは、ifconfigのような古くて廃止されたツールが同じインターフェイス名を使用して複数のアドレスを割り当てることができないために必要です。

編集:vethインターフェイスペアを使用して2つのネットワークネームスペースを接続できます。

sudo ip link add ns1_eth type veth peer name veth0

反対側ns1をサイバースペースに移動する:

sudo ip link set ns1_eth netns ns1

ペアvethはチューブのように機能し、一方の端からの送信が他方の端に表示されます。上記のコマンドに加えて、アドレス指定とルーティングも設定する必要があります。

おすすめ記事