
これについては助けが必要です。iptables についてはよく知っていますが、どうやって始めればいいのかさえわかりません。
私には、静的 IP アドレス 10.0.0.2/24 を持つガジェットがあります。これがガジェットの IP アドレスであり、変更することはできません。私のラップトップには、以前は NIC が 1 つしかありませんでした。ガジェットを開発ネットワークに接続し、ラップトップの NIC にセカンダリ アドレス 10.0.0.1 を割り当て、デバイスをラップトップと同じスイッチに接続するだけで、パブリック インターネットとこのガジェット (ラップトップ以外のデバイスにアクセスする必要がありません) に接続できました。理想的ではありませんが、うまくいきました。
ここで、別の開発ネットワークに移動する必要がありました。その IP 範囲は .... (サスペンス音楽) .... 10.0.0.0/24 です。また、10.0.0.2 は、別のデバイスによって占有されている DHCP 範囲内にあります。
私は今、ラップトップ用に別のネットワーク インターフェイス カード (eth1) を入手し、IP アドレス 10.42.42.1 を割り当てました。
基本的に、私が行う必要があるのは、iptables マジックを使用して、たとえば 10.42.42.2 にアクセスすると、eth1 から出るこのトラフィックが、たとえば IP アドレス 10.0.0.5 を取得し、eth1 の 10.0.0.2 に渡され、ガジェットが応答し、eth1 が応答を受信すると、10.42.42.2 から送信されたかのようにホスト ラップトップに渡されるようにすることです。
ここではおそらく SNAT/DNAT ルールが必要になりますが、どのように設定すればよいでしょうか?
H
答え1
iptables
それは、network namespaces
問題 により適した仕事ではありません。
# Create network namespace gadget
ip netns add gadget
# Put device eth0 in gadget namespace
ip link set eth0 netns gadget
# Configure network in gadget namespace
# # Bring up ifaces
ip netns exec gadget ip link set lo up
ip netns exec gadget ip link set eth0 up
# # 10.0.0.0/24 address on eth0
ip netns exec gadget ip address add 10.0.0.1/24 dev eth0
# Now gadget pinging should work...
ip netns exec gadget ping 10.0.0.2