Автор Тема: Настройка маршрутизации. При запуске сети не исполняется команда ip route add  (Прочитано 4701 раз)

Оффлайн gothundead

  • Участник
  • *
  • Сообщений: 6
Добрый день.
Подскажите, пожалуйста, решение следующей проблемы:
При запуске компьютера (шлюза с 2мя сетевыми интерфесами) или перезапуске службы network при попытке пинговать адрес 8.8.8.8 пишет ошибку "Connect : Network is Unreachable".
При этом локальная сеть 192.168.2.* пингуется.

Исполняю команду ip route add default via {внешний_IP_адрес}.
После этого интернет появляется.

Как сделать так, чтобы эта команда исполнялась автоматически при запуске компьютера?

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 160
    • Домашняя страница
Добрый день.
Подскажите, пожалуйста, решение следующей проблемы:
При запуске компьютера (шлюза с 2мя сетевыми интерфесами) или перезапуске службы network при попытке пинговать адрес 8.8.8.8 пишет ошибку "Connect : Network is Unreachable".
При этом локальная сеть 192.168.2.* пингуется.

Исполняю команду ip route add default via {внешний_IP_адрес}.
После этого интернет появляется.

Как сделать так, чтобы эта команда исполнялась автоматически при запуске компьютера?
В Alterator→ Ethernet-интерфейсы выставить для интерфейса шлюз по умолчанию или вручную по инструкции http://www.altlinux.org/Etcnet (ключевое слово ipv4route)
Андрей Черепанов (cas@)

Оффлайн gothundead

  • Участник
  • *
  • Сообщений: 6
В Alterator→ Ethernet-интерфейсы выставить для интерфейса шлюз по умолчанию или вручную по инструкции http://www.altlinux.org/Etcnet (ключевое слово ipv4route)

Если я правильно понял, то данный файл с указанным шлюзом по умолчанию уже существует для одного из интерфейсов.

Оффлайн ksa

  • Модератор глобальный
  • *****
  • Сообщений: 9 049
Покажите вывод ip rдля случая, когда не пингуется и после того, как руками добавили маршрут и пропинговали.

Оффлайн gothundead

  • Участник
  • *
  • Сообщений: 6
Для случая с запущенным вручную маршрутом:
[root@norov ~]# ip r
default via 85.95.175.*{Внешний_IP} dev enp1s0
85.95.175.64/26 dev enp1s0  proto kernel  scope link  src 85.95.175.*{Внешний_IP}
192.168.2.0/24 dev enp1s1  proto kernel  scope link  src 192.168.2.1

Второй вывод с другого шлюза до запущенного вручную маршрута, который настроен идентично, правда с более старой версией alt linux. (Проблема там была идентичная)
85.95.175.64/26 dev eth0 proto kernel scope link src 85.95.175.*{Внешний_IP}
85.95.175.0/26 dev eth0 scope link
192.168.2.0/24 dev eth1 proto kernel scope link src 192.168.2.1
127.0.0.0/8 dev lo scope link

сейчас шлюз находится в 40 км от меня, поэтому потеря его управления будет несколько критична.

На всех остальных шлюзах проблем таких не было.
В данном случае впервые провайдер дал для подключения подобные настройки:
ip: 85.95.175.*
mask:255.255.255.192
gw:85.95.176.*

во всех остальных местах у нас шлюз по умолчанию всегда находился в той же подсети, что и внешний IP... и проблем не было. Не знаю, связано ли это как-то с этим.
« Последнее редактирование: 23.09.2014 18:58:38 от gothundead »

Оффлайн Rider

  • /usr/sbin/control
  • *******
  • Сообщений: 1 136
gw должен быть в той же сети, что и хост. вам провайдер дал не корректную информацию.

Оффлайн gothundead

  • Участник
  • *
  • Сообщений: 6
gw должен быть в той же сети, что и хост. вам провайдер дал не корректную информацию.
Благодарю. Попробую уточнить у провайдера.
Можно ли как временное решение использовать создание файла в /etc/cron.hourly с содержимым:
#!/bin/bash
ip route add default via {внешний_IP_адрес}

Оффлайн gothundead

  • Участник
  • *
  • Сообщений: 6
Попробовал на резервном компьютере с идентичными настройками добавить задание в crontab с командой на изменение маршрутизации - после перезапуска компьютера через интервал, указанный в crontab, ошибка изменилась с "network is not reachable" на "destination host unreachable" (резервный шлюз не подключен к сети).
Поэтому создал подобное задание на основном шлюзе до тех пор, пока уточню вопрос у провайдера. Спасибо большое за помощь

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 368
Можно ли как временное решение использовать ...
На самом деле, команда "ip route add default via {неправильный IP}" в принципе не должна работать. Из файла ipv4route она же и формируется. Если руками проходит, значит или IP-адрес другой руками подставляется, или же какой-то IP-интерфейс позже появляется (pppoe, либо по dhcp что-то прилетает и т.п.). Просто сверьте цифры внимательно. Любой другой вариант - это фантастика.

# ip route add default via 10.1.1.5
RTNETLINK answers: No such process

И так для любого IP, который не входит ни в одну из сетей, отображаемых по "ip a".
« Последнее редактирование: 24.09.2014 10:28:49 от asy »

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 368
enp1s0 - это точно тот интерфейс, который имеет адрес из нужной сети ? Может, в нужной сети другой интерфейс, и он активируется после enp1s0 ?

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 368
Для случая с запущенным вручную маршрутом:
[root@norov ~]# ip r
default via 85.95.175.*{Внешний_IP} dev enp1s0
85.95.175.64/26 dev enp1s0  proto kernel  scope link  src 85.95.175.*{Внешний_IP}

В данном случае впервые провайдер дал для подключения подобные настройки:
ip: 85.95.175.*
mask:255.255.255.192
gw:85.95.176.*
Вот. Смотрите внимательно, что Вы написали. default via 85.95.175.* и gw:85.95.176.*. Руками Вы пишите 5, а не 6.

Оффлайн Rider

  • /usr/sbin/control
  • *******
  • Сообщений: 1 136
да, нужно вместо 176 написать 175 и всё должно заработать. явно провайдер ошибся.