web-dev-qa-db-ja.com

Squidプロキシでインターネットアクセスに特定のゲートウェイを使用するように強制するにはどうすればよいですか?

Squidを使用して、ubuntu 10.04サーバーを透過プロキシとして設定できるようになりました。思ったとおりに機能しますが、深刻な問題があります...

両方のイーサネットカードでインターネットに接続する機会があります(2つの異なるisps)が、このサーバーですべてのインターネット要求を処理するためにeth1のみを使用したいと思います。

したがって、最終的なスキームはeth0を使用してすべての着信プロキシ要求を収集し、squidがeth1の超高速接続を使用してインターネットから情報を収集できるようにします。

問題は、eth0にファイアウォールが接続されていることです。このファイアウォールにより、ブランチオフィスはwifiブリッジを使用してプロキシにアクセスできます。

ブランチオフィスとプロキシ間の通信を確保するために、eth0のデフォルトゲートウェイとしてファイアウォールを設定する必要があります。ファイアウォールは、残念ながらインターネット接続も提供します(ただし低速です)。 Squidは完全にeth0を使用してリクエストを収集し、インターネットからデータを取得します。

一意の正しいデフォルトゲートウェイを設定できません。その場合、wifiブリッジを使用してブランチオフィスにパケットを送り返さないためです。

私は自分の貧しい説明のためにすみませんが、もう少し明確になっているといいのですが。

私の実際のルートは次のとおりです:

Kernel IP routing table`
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
193.206.x.x   *               255.255.255.0   U     0      0        0 eth1
128.0.x.x       *               255.255.0.0     U     0      0        0 eth0
default         128.0.x.x    0.0.0.0         UG    100    0        0 eth0
default         193.206.x.x 0.0.0.0         UG    100    0        0 eth1

ヒントはありますか?

詳細が必要な場合は投稿します。

3
Pitto

元の

コマンドプロンプトから:

Sudo route add default gw i.p.add.ress eth1

次に、/etc/network/interfaces、次の行を追加します:

up route add default gw i.p.add.ress eth1

もちろん、i.p.add.ress両方の行でゲートウェイのIPを使用します。

新しい質問のために編集

ルートを削除する必要がある場合は、「add」を「del」に変更するだけです。例:

(command) Sudo route del default gw 128.0.x.x eth0
(/etc/network/interfaces) up route del default gw 128.0.x.x eth0

Routeコマンドを使用して、ブランチオフィスの静的ルートを設定することもできます

route add -net (network_id/prefix) GW (gateway) (interface)
2
Hyppy

2つの問題があります。最初に、squidに正しいソースIPアドレスを使用させる必要があります。次に、そのソースIPアドレスを持つパケットが正しいゲートウェイ(ソースルーティング)に誘導されることを確認する必要があります。

最初の問題はSquidの問題です。 Squidのtcp_outgoing_addressを使用して、ソースIPアドレスを正しいアドレスに設定できます。

tcp_outgoing_address 128.0.x.x

2番目の問題は、システム構成の問題です。 128.0.x.xの送信元アドレスを持つパケットを193.206.x.xゲートウェイに送信したり、その逆をしたりしたくない場合。これはsource routingと呼ばれ、iptablesで実行されます。

それを行うためのより洗練された方法は、2つのルーティングテーブルを持つことです。 1つは128.0.x.xの送信元アドレスを持つパケットに使用され、128.0.x.xゲートウェイへのデフォルトルートを持ちます。逆も同様です。 http://wlug.org.nz/SourceBasedRouting

1
David Schwartz