私は成功せずにこれを行う方法の詳細を検索しました。誰でもアドバイスをしてもらえるかと思います。
私は2つのネットワークカード(私の場合はLANと3G)を持っていますが、LANはデフォルトのインターフェイス(静的)で、3Gは動的です。
マイコンピュータには、ポート19000のLAN固定外部IP経由でアクセスできるカスタムプロキシサーバーがインストールされています。これは機能しますが、デフォルトのLANインターフェイスを介してルーティングされるため、このプロキシトラフィックは3Gインターフェイスを介してルーティングする必要があります。
私のインターフェイスとルートテーブルは次のとおりです。
eth0 Link encap:Ethernet HWaddr 0e:93:9f:f1:98:10
inet addr:10.100.9.35 Bcast:10.100.9.255 Mask:255.255.255.0
eth1 Link encap:Ethernet HWaddr 02:1e:10:1f:00:00
inet addr:10.226.59.139 Bcast:10.226.59.143 Mask:255.255.255.248
route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.100.9.1 0.0.0.0 UG 0 0 0 eth0
10.100.9.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.226.59.136 0.0.0.0 255.255.255.248 U 0 0 0 eth1
ip route list
default via 10.100.9.1 dev eth0
10.100.9.0/24 dev eth0 proto kernel scope link src 10.100.9.35
10.226.59.136/29 dev eth1 proto kernel scope link src 10.226.59.139
インターフェイスeth0は私のLANカードであり、インターフェイスeth1は私の3Gカードです。問題は、3GインターフェースIPもモバイルインターネットに再接続するたびに変わるため、eth1のIPも毎回異なるという点だ。
それでは、イカプロキシを使用すると仮定すると、http_portをtcp_outgoing_addressに設定できますが、eth1アドレスが毎回変更される場合は、どのアドレスを設定する必要がありますか?
例えば。
http_port 19000
tcp_outgoing_address ?
ルーティングテーブルに外部Web IPを追加し、プロキシ経由でアクセスして小さなテストを実行しましたが、3G eth1を介して正しくルーティングされました。
ip route replace 216.146.206.83 dev eth1
ただし、この場合はプロキシサーバーに追加し、各訪問IPを自分のルーティングテーブルに追加してから強制的にeth1を通過させる必要がありますが、これによりルーティングテーブルに多数のIPが発生する可能性があります。
また、カールを使用すると、インターフェイス名パケットは eth1 を介して送信されますが、eth1 インターフェイス IP を使用すると接続タイムアウトが発生します。
curl --interface eth1 checkip.dyndns.org
curl --interface 10.226.59.139 checkip.dyndns.org
今何を試すべきかわかりません。助ける?どんな提案でも歓迎します。