誰かがこの件について説明してくれることを願っています。私のネットワークに関する知識はせいぜい基礎レベルです。
2 つのネットワーク上に CentOS サーバーがあります。
- NIC1 はパブリック IP 上にあり、ゲートウェイはスイッチ 1 に設定されます。(ADSL インターネット)
- NIC2 は 10.10.10.2 に設定されており、スイッチ 2 にはゲートウェイが設定されていません。(ケーブル インターネット)
- スイッチ 2 のゲートウェイ/ルーターは 10.10.10.1 です。(ASUS ルーター)
LAN 内では、他の LAN PC は開いているポートで 10.10.10.2 にアクセスできます。ゲートウェイ/ルーター 10.10.10.1 --> 10.10.10.2 へのポート転送ルールが設定されている場合、これは機能しません。ゲートウェイ/ルーター 10.10.10.1 --> 10.10.10.3 へのポート転送は機能します (ゲートウェイが 10.10.10.1 に設定されている Windows マシン)。
ASUS ルーター 10.10.10.1 を介してパブリック インターネットから 10.10.10.2 に到達することは可能ですか?
答え1
IP ポリシー ルーティング。
CentOS サーバーを更新して 2 番目の NIC がパケットを受信および送信できるようにするために使用した同じ内容の 2 つの記述を見つけました。また、デュアル NIC/ゲートウェイを備えた別の同様のサーバーの更新にも成功しました。
http://jensd.be/468/linux/two-network-cards-rp_filter<-- 「ベスト ソリューション」セクションで IP ポリシーを設定し、rp_filter の値を変更しませんでした。この記事にはわかりやすい図も掲載されています。
http://www.microhowto.info/howto/ensure_symmetric_routing_on_a_server_with_multiple_default_gateways.html <--上記の例をさらにわかりやすくした追加例。
変更を永続的にしたい場合は、上記の最初のリンクの指示に従ってください。
私の例:
- ip route add 99.88.77.66/24 dev eth0 table 1 (例: パブリック IP #1)
- ip route add default via 99.88.77.1 テーブル 1 (例: パブリック IP #1 のゲートウェイ)
- ip route add 10.10.10.0/24 dev eth1 table 2 (異なるネットワーク上の 2 番目の NIC)
- ip route add default via 10.10.10.1 テーブル 2 (ASUS ルーター ゲートウェイ)
- IP ルールを 99.88.77.66/32 テーブル 1 から追加、優先度 100
- 10.10.10.4/32 テーブル 2 優先度 110 から IP ルールを追加
- IPルートフラッシュキャッシュ
/24 は、IP のサブネット マスクに応じて変更される場合があります。
答え2
まず、セットアップが機能しない理由を理解する必要があります。そのためには、何が起こるかを検討する必要があります。
- 「ケーブル」インターネット接続から接続試行が行われます。
- NAT ルーターは宛先アドレスを変更し、マッピング テーブル エントリを設定します。
- パケットがサーバーに到達し、応答が生成されます。
- サーバーはルーティング テーブルで応答の宛先を検索し、パケットをデフォルト ゲートウェイ (例: 「ADSL」インターネット接続) に送信します。
- おそらく、パケットは偽の送信元アドレスを持つため破棄されます。パケットがクライアントに戻ったとしても、その送信元アドレスはクライアントが期待するものと一致しないため、クライアントはそれを偽物として破棄します。
何が問題なのかがわかったので、対処法を講じることができます。選択肢はいくつかあります。
オプション 1 は、サーバー上で「ポリシー ルーティング」を使用して、送信元 IP に基づいてトラフィックをルーティングすることです。これは、サーバーがサポートしている場合 (Linux の最新バージョンはサポートしています) に最適なオプションです。スタイルの答えLinux サーバー上でポリシー ルーティングを設定し、送信元アドレスに基づいてルーティングする方法について説明します。
オプション 2 は、ポリシー ルーティングを実行できるボックスにサーバーのデフォルト ゲートウェイを指定することです。これにより、そのボックスは送信元 IP に応じてトラフィックを正しくルーティングできます。これは、サーバー OS がポリシー ルーティングをサポートしていない場合に役立つソリューションです。
オプション 3 は、NAT ボックスをポート転送するトラフィックに対してマスカレードにすることです。トラフィックの実際の送信元アドレスを隠すため、これは最後の手段のオプションと考えます。