Linuxの同じサブネット上の2つのネットワークインターフェイスと2つのIPアドレス
最近、2つのSSL / TLSサイトを実行できるように、1つのLinuxホストに割り当てられた同じサブネット上の2つのIPアドレスが必要な状況に遭遇しました。私の最初のアプローチは、たとえばeth0:0、eth0:1などを使用してIPエイリアシングを使用することでしたが、ネットワーク管理者は、このアイデアを押しつぶすセキュリティのためにかなり厳しい設定をしています。 DHCPスヌーピングを使用し、通常は静的IPアドレスを許可しません。静的アドレス指定は静的DHCPエントリを使用して行われるため、同じMACアドレスが常に同じIP割り当てを取得します。この機能は、スイッチポートごとに無効にすることができ、その理由があります(ありがたいことに、私はネットワーク関係者と良好な関係にあり、これは難しくありません)。 DHCPスヌーピングがスイッチポートで無効になっていると、MACアドレスXにIPアドレスYを許可するというルールをスイッチに設定する必要がありました。残念ながら、これにはMACアドレスX IPアドレスY。IPエイリアシングでは、MACアドレスXに2つのIPアドレスが割り当てられている必要があったため、これは機能しませんでした。 スイッチ構成でこれらの問題を回避する方法があったかもしれませんが、ネットワーク管理者との良好な関係を維持するために、別の方法を見つけようとしました。2つのネットワークインターフェイスを持つことは、次の論理的なステップのように思えました。ありがたいことに、このLinuxシステムは仮想マシンであるため、2つ目のネットワークインターフェイスを簡単に追加できました(再起動せずに追加できます-かなりクールです)。数回キーを押すと、2つのネットワークインターフェイスが起動して実行され、両方がDHCPからIPアドレスを取得しました。 しかし、その後、問題が発生しました:ネットワーク管理者は両方のインターフェースのARPエントリを(スイッチ上で)見ることができましたが、最初に立ち上げたネットワークインターフェースのみがpingまたはあらゆる種類のTCPまたはUDPトラフィックに応答しました。 たくさんの掘り出しと突き詰めた後、ここに私が思いついたものがあります。それはうまくいくように思えますが、それは単純なものであるように思われる何かのための多くの仕事でもあるようです。他のアイデアはありますか? 手順1:すべてのインターフェイスでARPフィルタリングを有効にします。 # sysctl -w net.ipv4.conf.all.arp_filter=1 # echo "net.ipv4.conf.all.arp_filter = 1" >> /etc/sysctl.conf Linuxカーネルドキュメントのnetworking / ip-sysctl.txtファイルから: arp_filter - BOOLEAN 1 - Allows you to have multiple network interfaces on the same subnet, and have the ARPs for each interface be answered based …