透過的なWebリソースキャッシュを使用したルータの構築

透過的なWebリソースキャッシュを使用したルータの構築

ネットワークインターフェイスの設定

192.168.0.0 Out 1(enp10s0f0) - Local 01(enp10s0f1)  192.168.10.0
                             - Local 02(enp10s0f2)
                             - Local 03(enp10s0f3)

59.27.1.128 Out 2(enp11s0f0) - Local 04(enp11s0f1)  192.168.11.0
                             - Local 05(enp11s0f2)
                             - Local 06(enp11s0f3)

アウトバウンドラインは2本です。各回線は地元の人とアウトバウンド接続を共有します。出力1 =>ローカル01〜02、出力2 =>ローカル03〜04

だから私は次のようにiptablesを設定するスクリプトを書いています。

iptables -t nat -A POSTROUTING -o enp10s0f0 -j MASQUERADE -s 192.168.10.0/24
iptables -t nat -A POSTROUTING -o enp11s0f0 -j MASQUERADE -s 192.168.11.0/24

iptables -A FORWARD -i enp10s0f0 -o enp10s0f1 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i enp10s0f0 -o enp10s0f2 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i enp10s0f0 -o enp10s0f3 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i enp10s0f1 -o enp10s0f0 -j ACCEPT
iptables -A FORWARD -i enp10s0f2 -o enp10s0f0 -j ACCEPT
iptables -A FORWARD -i enp10s0f3 -o enp10s0f0 -j ACCEPT

iptables -t mangle -A PREROUTING -i enp10s0f1 -p tcp -m tcp --dport 80 -j TPROXY --on-ip 0.0.0.0 --on-port 8080 --tproxy-mark 0x1/0x1
iptables -t mangle -A PREROUTING -i enp10s0f2 -p tcp -m tcp --dport 80 -j TPROXY --on-ip 0.0.0.0 --on-port 8080 --tproxy-mark 0x1/0x1
iptables -t mangle -A PREROUTING -i enp10s0f3 -p tcp -m tcp --dport 80 -j TPROXY --on-ip 0.0.0.0 --on-port 8080 --tproxy-mark 0x1/0x1

iptables -t mangle -A PREROUTING -i enp10s0f0 --source 192.168.10.0/24 -j ACCEPT
iptables -t mangle -A PREROUTING -i enp10s0f0 --destination 192.168.10.0/24 -j ACCEPT

iptables -t mangle -A PREROUTING -i enp10s0f0 -p tcp -m tcp --sport 80 -j MARK --set-mark 0x1/0x1

ip rule add fwmark 0x1/0x1 table 2
ip route add local 0.0.0.0/0 dev lo table 2    
//Do this for enp11, too

しかし、後で接続したアウトラインの1つが期待どおりに機能しませんでした。 (ラインが接続されると、オペレーティングシステムはルーティングテーブルを再構成するため、最初に接続されたラインのみが有効になり、2番目はそうではありません。)他の外部ラインに接続されたローカルラインは有効です。

ルーティングテーブルのためだと思いますが、問題が何であるかわかりません。

これが「iproute」が示すものです。

default via 59.27.1.129 dev enp11s0f0  proto static  metric 2   
default via 192.168.0.1 dev enp10s0f0  proto static  metric 100 
59.27.1.128/26 dev enp11s0f0  proto kernel  scope link  src 59.27.1.176  metric 2 
169.254.0.0/16 dev enp11s0f0  scope link  metric 2 
192.168.0.0/24 dev enp10s0f0  proto kernel  scope link  src 192.168.0.22  metric 100 
192.168.10.0/24 dev enp10s0f1  proto kernel  scope link  src 192.168.10.251  metric 100 
192.168.11.0/24 dev enp11s0f1  proto kernel  scope link  src 192.168.11.251  metric 2 
222.118.178.36 via 59.27.1.129 dev enp11s0f0  proto dhcp  metric 2

ありがとうございます。

答え1

ルーティングテーブルの問題です。

まったく同じです。参照番号 複数の内部および外部インターフェイスを備えたNATボックス

テーブルを分割し、IPベースの検索ルールを追加する必要があります。

関連情報