Ничто из того, что я собираюсь вам сказать, не является постоянным при перезагрузках, что, как я полагаю, является вашим желанием, потому что, по-видимому, у вас нестабильная ситуация. Если нет, дайте мне знать.
Я предполагаю, что у вас нет статического IP (опять же, если да, пожалуйста, дайте мне знать). DHCP-сервер провайдера 1 остается включенным, когда линия не работает? Если нет то
sudo ifdown eth0
sudo ifup eth0
даст вам новую конфигурацию. Но если вместо этого DHCP сервер провайдера 1 делает остаться, то вам придется сделать это вручную.
Изменить маршрут:
sudo ip route del default
sudo ip route add default via 192.168.1.121 dev eth0
где я предположил, что вы подключены через Ethernet, и что IP-адрес второго модема 192.168.1.121, если не измениться соответственно.
Изменить DNS, проще всего: отредактируйте (как sudo) /etc/resolv.conf
, удалите строки с предыдущими DNS, затем добавьте две следующие строки:
nameserver 1.2.3.4
nameserver 9.8.7.6
(заменить вашими значениями).
Если это вас раздражает, вы можете автоматизировать его следующим образом: создайте исполняемый файл (!) файл, назовите его line2
, со следующим содержанием:
#!/bin/bash
sudo ip route del default
sudo ip route add default via 192.168.1.121 dev eth0
sed -i --follow-symlinks 's/First.Old.DNS.IP./First.New.DNS.IP/' /etc/resolv.conf
sed -i --follow-symlinks 's/Second.Old.DNS.IP./Second.New.DNS.IP/' /etc/resolv.conf
и теперь выполнение line2
даст вам новое соединение.
Существуют и другие, более элегантные способы изменения DNS (использование resolvconf
, запись в /etc/resolvconf.d
), но, поскольку у вас часто возникают проблемы, ничто не так просто, как это.