Можно ли добавить два разных шлюза по умолчанию в таблицу маршрутизации для двух разных сетевых адаптеров в Android? - PullRequest
4 голосов
/ 23 августа 2011

По умолчанию пакеты соединения по умолчанию будут использовать eth0 для выхода / входа. Шлюз по умолчанию в таблице маршрутизации - это gw ip из eth0.

Когда другой интерфейс сообщает, что eth1 работает, я хочу добавить еще один шлюз по умолчанию для eth1. Это возможно в Android? Так как я не могу добавить другой шлюз по умолчанию для eth1, потому что уже существует eth0.

Спасибо за вашу помощь.

Ответы [ 2 ]

5 голосов
/ 20 октября 2011

Шлюз по умолчанию только один, это по умолчанию.У вас может быть несколько интерфейсов, каждый из которых имеет свой шлюз, но только один по умолчанию (ваша система не может выбрать).

Представьте себе:

eth0 - IP: 192.168.0.10/24 Gateway: 192.168.0.1
eth1 - IP: 192.168.1.10/24

У вас должно быть как минимум 3 маршрута (обычноавтоматический):

To go to some IP on 192.168.0.0, go thru eth0.
To go to some IP on 192.168.1.0, to thru eth1.
To go to anywhere else, go thru 192.168.0.1.

Итак, вы видите, вам не нужно больше одного шлюза по умолчанию.То, что вы могли бы хотеть, является воротами для определенного маршрута.Представьте, что у вас есть сеть 192.168.2.0, в которую можно попасть только с помощью шлюза 192.168.1.1.С вышеупомянутой конфигурацией ваш компьютер попытается использовать шлюз по умолчанию 192.168.0.1.Вы можете использовать что-то вроде:

route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.1

Таким образом, у вас будет 2 шлюза, но по умолчанию только 1.Этот второй используется только для сети 192.168.2.0.

0 голосов
/ 07 августа 2016

Это возможно на компьютере с Windows 10, второй обрабатывается как программный интерфейс и используется для восстановления.Я ожидал, что Android также будет иметь эту функцию, но вместо этого мне придется менять ее каждый раз, когда мой кабель умирает, чтобы изменить на ADSL.

...