ネットワーク GURU の ....
環境 RHEL 6.5 サーバー X86_64
プライマリ ネットワークにプラグインされた仮想 Repo/svn ボックスがあります。
eth0 10.28.50.129
また、プライマリ ネットワークに接続されているかどうかに関係なく、サーバーのインスタンスへのアクセスを許可するために、一意の IP を持つ分離された VSwitch に接続する 4 つの追加の NIC があります。
eth1 10.28.50.131
eth2 10.28.50.132
eth3 10.28.50.133
eth4 10.28.50.134
10.28.50.129 ポート 5080 の http 接続を eth2 カード経由で 10.28.50.155 ポート 80 にポート転送する必要があります。
10.28.50.129 ポート 6080 の http 接続を eth3 カード経由で 10.28.50.155 ポート 80 にポート転送する必要があります。
パケットは、ターゲットの httpd サーバーが存在する分離 VLAN として eth0 nic のデフォルト ルートを経由できません。
ネット上の他のいくつかの投稿を読んだことから... iptables を使用して接続を CONNMARK し、iproute2 を使用してタグ付きパケットを正しいネットワークにドロップする必要があることを知っています。
私が現在持っているものは機能していないようです..これをもう少しうまくデバッグできるようにwiresharkを壊しましたが、これまでのところ、何がうまくいかないのかを理解しようとして頭を壁にぶつけていました。
誰かが助けてくれることを願っていました。
私がこれまでに持っているもの:
私の /etc/sysconfig/iptables
*mangle
:PREROUTING ACCEPT [1702:152640]
:INPUT ACCEPT [1092:89135]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [517:33940]
:POSTROUTING ACCEPT [517:33940]
-A PREROUTING -i eth0 -p tcp -m tcp --dport 5080 -j CONNMARK --set-xmark 0xa
-A PREROUTING -i eth0 -p tcp -m tcp --dport 6080 -j CONNMARK --set-xmark 0xb
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [10566:1406688]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -p icmp -j ACCEPT
-A FORWARD -i lo -j ACCEPT
-A FORWARD -d 10.28.50.116/32 -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
*nat
:PREROUTING ACCEPT [1698:188025]
:POSTROUTING ACCEPT [4:272]
:OUTPUT ACCEPT [2:168]
-A PREROUTING -p tcp -m tcp --dport 5080 -j DNAT --to-destination 10.28.50.116:80
-A PREROUTING -p tcp -m tcp --dport 6080 -j DNAT --to-destination 10.28.50.116:80
COMMIT
#
私も走った…
echo "201 eth2.out" >> /etc/iproute2/rt_tables
ip rule add fwmark 0xA table eth2.out
echo "201 eth3.out" >> /etc/iproute2/rt_tables
ip rule add fwmark 0xB table eth3.out
/sbin/ip route add default via 10.28.50.132 dev eth2 table eth2.out
/sbin/ip route add default via 10.28.50.133 dev eth3 table eth3.out
2 つの nic を介してルーティングをセットアップするには
#私が期待しているのは、Vswitch/VLAN の状態 (接続または切断) に関係なく、レポ ボックスのポートにアクセスすると、ターゲットの IP/ポートに接続できることです。
誰か私に手を貸してくれませんか?thnx。