Ubuntu デュアル ライン デュアル ネットワーク カード デュアル IP 構成方法には特定のコード サンプルが必要です
Ubuntu は、デスクトップおよびサーバー環境で使用できる人気のオープン ソース オペレーティング システムです。デュアル回線、デュアル ネットワーク カード、およびデュアル IP を構成すると、ネットワークの負荷分散と冗長バックアップを実現でき、ネットワークの信頼性とパフォーマンスが向上します。この記事では、Ubuntu システムでデュアルライン デュアル ネットワーク カードのデュアル IP を構成する方法を紹介し、具体的なコード例を示します。
まず、システムで利用可能なネットワーク カード デバイスを確認する必要があります。ターミナルを開き、次のコマンドを実行します。
$ ifconfig -a
このコマンドは、現在のシステム内のすべてのネットワーク カード デバイス情報を表示します。たとえば、次のとおりです。
eth0 Link encap:Ethernet HWaddr 08:00:27:b8:92:fa inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:feb8:92fa/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:16 errors:0 dropped:0 overruns:0 frame:0 TX packets:16 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1184 (1.1 KB) TX bytes:1184 (1.1 KB)
上記の例では、次のことがわかります。ネットワーク カード デバイスは 2 つあり、1 つは eth0、もう 1 つは lo (ローカル ループバック デバイス) です。
次に、ネットワーク構成ファイルを編集して、デュアルライン デュアル ネットワーク カードのデュアル IP を構成する必要があります。次のコマンドを実行して、ネットワーク構成ファイルを開きます。
$ sudo nano /etc/network/interfaces
ファイル内で、既存のネットワーク構成情報を確認できます。 2 番目のネットワーク カード デバイスの IP アドレスを構成するには、2 つの新しい構成セクションを追加する必要があります。
2 番目のネットワーク カード デバイスの IP アドレスを 192.168.1.101 に、サブネット マスクを 255.255.255.0 に設定するとします。ファイルの末尾に次の行を追加します。
auto eth1 iface eth1 inet static address 192.168.1.101 netmask 255.255.255.0
ファイルを保存し、エディタを終了します。
次に、構成を有効にするためにネットワーク サービスを再起動する必要があります。次のコマンドを実行してネットワーク サービスを再起動します。
$ sudo systemctl restart networking
これで、デュアルライン デュアル ネットワーク カードのデュアル IP が正常に構成されました。次のコマンドを使用して、ネットワーク カード デバイスの構成情報を再度表示できます。
$ ifconfig -a
eth1 が IP アドレスを正常に構成していることが確認できるはずです。
次に、デュアル回線、デュアル ネットワーク カード、デュアル IP によるネットワーク負荷分散を実装する Python スクリプトの例を示します。 Python がインストールされていることを確認してから、新しいファイルを作成し、そのファイルに次のコードを追加します。
import subprocess def set_default_gateway(interface): subprocess.call(f'sudo ip route del default', shell=True) subprocess.call(f'sudo ip route add default scope global dev {interface}', shell=True) def set_load_balancing(interface1, interface2): subprocess.call(f'sudo ip route add default scope global nexthop via $(sudo ip route show dev {interface1} | grep -Po "default via KS+") weight 1 nexthop via $(sudo ip route show dev {interface2} | grep -Po "default via KS+") weight 1', shell=True) if __name__ == "__main__": set_default_gateway("eth0") set_load_balancing("eth0", "eth1")
ファイルを保存して終了します。次に、ターミナルで次のコマンドを実行して Python スクリプトを実行します。
$ python3 <文件名>.py
上記のコードは、最初のネットワーク カード デバイス (eth0) をデフォルト ゲートウェイとして設定し、最初と 2 番目のネットワーク カード デバイスの間でトラフィックをルーティングします。負荷分散を実行します。
この記事では、Ubuntu システムでデュアルライン デュアル ネットワーク カードのデュアル IP を構成する方法を紹介し、具体的なコード例を示します。これらの手順を通じて、Ubuntu システムにデュアルライン デュアル ネットワーク カード デュアル IP を構成して、ネットワーク負荷分散と冗長バックアップを実現できます。
以上がUbuntu デュアルライン デュアル ネットワーク カードのデュアル IP 構成方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。