Перестаёт работать связь с внешним миром после перезагрузки

Есть сервер с 2 сетевыми интерфейсами с одного((enp1s0) он принимает RTSP поток полученный от камеры с локальной сети(локальна сеть без доступа в интернет), с другого(enp2s0) соответственно транслирует этот rtsp поток в интернет.

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

Из-за отсутствия опыта в настройке маршрутизации двух сетевых карт, не получается настроить конфиги должным образом, чтобы серв всегда смотрел в интернет(после ребутов), и постоянно слушал локалку с ртсп потоком.

enp1s0    Link encap:Ethernet  HWaddr 60:63:4c:b1:ff:a8  
          inet addr:192.168.0.253  Bcast:192.168.0.255 Mask:255.255.255.0
          inet6 addr: fe80::48ff:d754:7b46:760d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6471 errors:0 dropped:2661 overruns:0 frame:0
          TX packets:61288 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:929320 (929.3 KB)  TX bytes:10183628 (10.1 MB)

enp2s0    Link encap:Ethernet  HWaddr 04:d4:c4:24:bd:62  
          inet addr:172.109.12.250  Bcast:172.109.12.255  Mask:255.255.255.0
          inet6 addr: fe80::2d1b:f0b8:559f:1584/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2029935 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1847456 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:629018361 (629.0 MB)  TX bytes:483710431 (483.7 MB)

lo        Link encap:Локальная петля (Loopback)  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:227910 errors:0 dropped:0 overruns:0 frame:0
          TX packets:227910 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:75825785 (75.8 MB)  TX bytes:75825785 (75.8 MB)

/etc/network/interfaces стандартный, изменений в него не вносил.


Ответы (1 шт):

Автор решения: aleksandr barakin

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

решение в таком случае очевидно. надо:

  • либо поменять метрики у этих маршрутов (чем меньше метрика, тем выше приоритет маршрута)
  • либо (что проще) убрать все маршруты по умолчанию кроме одного (на интерфейсе, подключенном к внешней сети)

Вносил конфигурации через графический интерфейс(пкм на сеть->изменить параметры)

подразумевается какой-то апплет для управления, скорее всего, network-manager-ом. явно не самое лучшее решение для сервера, где установка и запуск x-сервера вообще избыточны, а управление конфигурацией сети с помощью nmcli существенно сложнее правки файла /etc/network/interfaces (для дистрибутивов debian gnu/linux и «наследников»).

благо, избавиться от network-manager-а можно даже и без его удаления (хотя смысл его наличия на сервере близок к нулю): достаточно сконфигурировать интерфейсы в файле /etc/network/interfaces, и network-manager не будет вмешиваться в их работу.

в общем случае необходимо добавить секции (см. $ man interfaces):

  • для интерфейса, конфигурируемого по протоколу dhcp (подразумевается, что такой интерфейс только один):

    auto имя-интерфейса
    iface имя-интерфейса inet dhcp
    
  • для каждого из остальных интерфейсов:

    auto имя-интерфейса
    iface имя-интерфейса inet static
    address ip-адрес/маска
    

ну и на всякий случай стоит убедиться, что установлен пакет ifupdown — именно в нём содержатся программы /sbin/ifup и /sbin/ifdown и всё остальное необходимое для обработки файлов /etc/network/interfaces{,.d/*} в дистрибутивах debian gnu/linux и «наследниках».

→ Ссылка