Назад | Перейти на главную страницу

принудительная маршрутизация прокси-трафика через определенный интерфейс 3G-ключа

Я искал подробности о том, как это сделать, но мне это не удалось - я подумал, может ли кто-нибудь дать совет.

У меня есть 2 сетевые карты (в моем случае LAN и 3G), LAN - мой основной интерфейс (статический), а 3G - динамический.

У меня есть собственный прокси-сервер, установленный на машине, и он доступен через статический внешний IP-адрес LAN на порту 19000. Он работает, но маршрутизируется через мой основной интерфейс 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. Проблема также в том, что IP-адрес интерфейса 3G постоянно меняется каждый раз, когда он подключается к мобильному Интернету, поэтому IP-адрес каждый раз меняется на eth1.

Итак, скажем, с прокси-сервером squid можно настроить http_port на tcp_outgoing_address, но какой адрес следует установить, если адрес eth1 будет меняться каждый раз?

например.

http_port 19000
tcp_outgoing_address ?

Я провел небольшой тест с добавлением одного внешнего веб-IP в таблицу маршрутизации, а затем обратился к нему через прокси, и он был правильно маршрутизирован через 3G eth1.

ip route replace 216.146.206.83 dev eth1

Но в этом случае я должен добавить свой прокси-сервер, чтобы добавить каждый доступный IP-адрес в мою таблицу маршрутизации и принудительно передать его через eth1, но это может закончиться тоннами IP-адресов в таблице маршрутизации ...

Я не знаю, что еще попробовать. Помогите? Любые советы приветствуются.