Имею ADSL-модем, подключенный через Ethernet.
Модем у меня всю жизнь был настроен в режиме роутера, поэтому настройка сетевой карты была простой:
Config #1
Код: Выделить всё
auto lo eth0
iface lo inet loopback
iface eth0 inet static
address 192.168.1.3
netmask 255.255.255.0
gateway 192.168.1.1Теперь в свете возможного отказа от ADSL решил попробовать настроить pppoe.
Прогнал pppoeconf, указал свои данные, pppoeconf ругнулся на мой interfaces, что возможно он неправильный. Тогда я убрал interfaces с глаз долой и запустил pppoeconf, чтобы он сам создал этот файл.
Файл получился такой
Config #2
Код: Выделить всё
auto lo
iface lo inet loopback
auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider
auto eth0
iface eth0 inet manualЕсли настройки для eth0 вернуть к варианту static (как в Config #1) получим
Config #3
Код: Выделить всё
auto lo
iface lo inet loopback
auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider
iface eth0 inet static
address 192.168.1.3
netmask 255.255.255.0
gateway 192.168.1.1Однако, если gateway указать 192.168.1.0, то работает и то, и другое (что удивительно), но при поднятии сети гневно клеймит меня позором и нехорошими словами:
Код: Выделить всё
RTNETLINK answers: Invalid argument
Failed to bring up eth0.В результате я вернулся к config #2.
Я так понимаю, что нужно присвоить eth0 ip-адрес в одной подсети с модемом и прописать маршрут.
Выполнив
Код: Выделить всё
ip address add 192.168.1.3 dev eth0затем
Код: Выделить всё
ip route add 192.168.1.0/24 dev eth0я таки получил желаемое, но как это заставить выполняться автоматически, я так и не понял.
Попытался эти две команды поместить в скрипт в /etc/network/if-up.d/
не работает, при поднятии сети ругается (script exit code 2 или что-то в этом духе), хотя адрес интерфейсу присваивается, но таблица маршрутизации пустая.
Попробовал поставить пакет ifupdown-extra и заполнить файл /etc/network/routes.
Требует ip-адреса для eth0, без чего не заполняет таблицу маршрутизации.
Попробовал прописать static в interfaces, но не указывать gateway
Config #4
Код: Выделить всё
auto lo
iface lo inet loopback
auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider
iface eth0 inet static
address 192.168.1.3
netmask 255.255.255.0Код: Выделить всё
WARNING: Initialising interface eth0 which does not have linkВ итоге я не знаю, как сделать правильно.
Итак, вопрос: Как мне работать в интернет через pppoe, при этом не теряя возможности соединиться с модемом через 192.168.1.1?
Пожалуйста, помогите разобраться.