
4 つのイーサネット インターフェイスを備えた Ubuntu 12.04 サーバーがあり、そのうち 2 つは eth5 と eth6 上の構成不可能なネットワーク デバイスに接続しています。各デバイスには、telnet 経由で 192.168.100.1 からのみアクセスできます。NAT を使用すると、両方のデバイスにアクセスできるようになります。他のソリューションも歓迎します。
私がやりたいことは、次のようになります。telnet 192.168.1.100
そして、eth5 で 192.168.100.1 に変換します。同様に、telnet 192.168.1.101
eth6 で 192.168.100.1 に変換します。このようにして、特定のイーサネット インターフェイスを使用する一種の IP エイリアスができます。このような解決策がなければ、明らかに IP の競合が発生します。
私が目にする NAT チュートリアルのほとんどは、インターネット接続の共有に関するものです。私は、もっと単純なことをやろうとしていますが、どうやら文書化されていないようです。
任意のヒント?
答え1
NAT(またはネットワークアドレス変換) は、すべての「内向き」IP を単一の「外向き」IP (IP マスカレード) として扱い、複数のローカル デバイスが同じ外向き接続に接続できるようにします (たとえば、ケーブル モデムに接続された Wi-Fi ルーターでは、NAT (およびおそらく DHCP) がオンになっており、デバイスが ISP から割り当てられた単一の IP を介してインターネットに接続できるようにします)。
あなたが求めているのは(私が推測するに)IPエイリアシングこれにより、単一の物理インターフェース ( としますeth0
) を持ち、それに複数の IP を割り当てることが可能になります。
たとえば、/etc/sysconfig/network-scripts/eth0
次のような内容の設定ファイルがあるとします。
DEVICE=eth0
IPADDR=192.168.1.100
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
ONBOOT=yes
NAME="192.168.1.100 (eth0)"
BOOTPROTO=none
USERCTL=no
192.168.1.100
この設定ファイルは、デバイスにの IP を割り当てますeth0
。そのため、別のマシンから 192.168.1.100 に ping すると、マシンの eth0 デバイスに送信されます。ルーターや iptables/PF を追加せずに、ネットワークeth0
からのトラフィックも「確認」したい場合は、次のようにしてインターフェイス10.0.0.0
に IP をエイリアスできます。eth0
エイリアスを追加するデバイスのファイルを作成します。この場合はeth0
設定ファイルですが、:X
(X
割り当てるエイリアスの番号) を追加します (例: /etc/sysconfig/network-scripts/eth0:1
)。このファイルには、追加するエイリアス情報が含まれます (例:
DEVICE=eth0:1
IPADDR=10.0.0.100
NETMASK=255.255.255.0
NETWORK=10.0.0.0
BROADCAST=10.0.0.255
ONBOOT=yes
NAME="10.0.0.100 (eth0:1)"
BOOTPROTO=none
USERCTL=no
この設定ファイルを追加すると、物理デバイスを介して両方192.168.1.100
と通信できるようになります。10.0.0.100
eth0
一方、ある物理インターフェース上のトラフィックを別の物理インターフェースに転送したい場合は、 を使用することを検討する必要がありますiptables
。
ご質問の内容から判断すると、2 つの異なる IP (192.168.1.100
および) から、同じ IP () を共有しているように見える192.168.1.101
2 つの別々の NIC (eth5
および) にトラフィックを送信することについてお尋ねのようです。と が現在どのように構成されているかはわかりませんが、同じ IP を「共有」するように結合されている場合は、IP エイリアシングでは目的を達成できない可能性があるため、代わりに iptables を確認する必要があります。eth6
192.168.100.1
eth5
eth6
これで少しは明確になるかと思います。