Я использую 1 ubuntu в качестве шлюза с 2 шлюзами в Интернете:
eno3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
ссылка/эфир d4:be:d9:f8:82:7a brd ff:ff:ff:ff:ff:ff
инет 10.11.12.3/24 brd 10.11.12.255 глобальный охват eno3
valid_lft навсегда
ссылка на область inet6 fe80::d6be:d9ff:fef8:827a/64
valid_lft навсегда
eno4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
ссылка/эфир d4:be:d9:f8:82:7c brd ff:ff:ff:ff:ff:ff
инет 192.168.1.7/24 brd 192.168.1.255 глобальный динамический диапазон eno4
valid_lft 45456 сек. selected_lft 45 456 сек.
ссылка на область inet6 fe80::d6be:d9ff:fef8:827c/64
valid_lft навсегда
Я использую эту команду для равномерного разделения пакетов между двумя интернет-шлюзами:
ip маршрут добавить по умолчанию
nexthop через 192.168.1.1 dev eno4 вес 1
следующий хоп через 10.11.12.2 dev eno3 вес 1
вот мой hostnamectl вывод команды:
Имя значка: компьютер-сервер
Шасси: сервер
Идентификатор машины: 05347957aee242939b05284f3a25313f
Идентификатор загрузки: 2d1adf269c6d4e9cacffc843ebd386a8
Операционная система: Ubuntu 18.04.5 LTS
Ядро: Linux 4.15.0-144-универсальный
Архитектура: x86-64
Все прошло идеально. Клиент может выходить в интернет под обоими шлюзами, скачивать и выгружать идеально.
Что мне интересно, так это то, как это было? Я знаю, что приведенная выше команда использует кэш маршрутизации Linux, но, начиная с Linux 3.6, маршруты больше не кэшируются, весь код кэширования удалено для IPv4. Так как же это было, когда сеансы подключения клиента все еще были сохранены и совершенны