Форум русскоязычного сообщества Ubuntu


Автор Тема: ifupdown, method dhcp, router variable  (Прочитано 548 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн koshev

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1708
  • חתול המדען
    • Просмотр профиля
ifupdown, method dhcp, router variable
« : 02 Март 2012, 00:45:12 »
В связи с меняющимся типом авторизации моего провайдера на IPoE, назрел вопрос как получить переменную router из dhclient?
Для чего нужно: Автоматизировать подключение для двух провайдеров. 1-й пров IPoE, 2-й PPPoE.
В RPM-based дистрибутивах видел переменную $GATEWAY или $GATEWAYDEV, но в Debian такого мне не попалось.
Думаю реализовать:
а) правкой /sbin/dhclient-script, введя нужные условия в оператор выбора case "$reason"
б) Скриптом в ifupdown навроде
Код: (bash) [Выделить]
#!/bin/sh

if [ $IFACE = "ethX" ] && [ -f /var/run/ppp0.pid ]; then
   ip r a default nexthop via \
   $(arp -i $IFACE | tail -1 | awk '{print $1}') \
   dev $IFACE weight 1 \
   nexthop  dev ppp0 weight 2
elif [ $IFACE = "ethX" ] && [ ! -f /var/run/ppp0.pid ]; then
   ip r a default \
   $(arp -i $IFACE | tail -1 | awk '{print $1}') \
   dev $IFACE
fi

в) Каким-то другим вариантом.
Подскажите пожалуйста, как бы это сделать лучше.
« Последнее редактирование: 02 Март 2012, 00:46:55 от KT315 »
OpenWrt 19.07

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 27663
    • Просмотр профиля
Re: ifupdown, method dhcp, router variable
« Ответ #1 : 02 Март 2012, 00:57:10 »
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн koshev

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1708
  • חתול המדען
    • Просмотр профиля
Re: ifupdown, method dhcp, router variable
« Ответ #2 : 02 Март 2012, 09:03:22 »
Спасибо, я в курсе про функцию set.
По твоей ссылке один ньюанс: там указывается метод static, при котором есть переменные $IF_ADDRESS, $IF_NETMASK и $IF_GATEWAY, при методе dhcp их нет.
Код: (bash) [Выделить]
ADDRFAM='inet'
IFACE='vlan3'
IFS='
'
IF_HWADDRESS='ether <skip>'
IF_METRIC='100'
IF_VLAN_RAW_DEVICE='eth0'
LOGICAL='vlan3'
METHOD='dhcp'
MODE='start'
OPTIND='1'
PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
PHASE='post-up'
PPID='3577'
PS1='# '
PS2='> '
PS4='+ '
PWD='/etc/network/if-up.d'
VERBOSITY='0'
Так что нет, не то.
OpenWrt 19.07

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 27663
    • Просмотр профиля
Re: ifupdown, method dhcp, router variable
« Ответ #3 : 02 Март 2012, 16:03:14 »
Спасибо, я в курсе про функцию set.
Я не про "set" вообще-то >.> За что ты меня так.
По твоей ссылке один ньюанс: там указывается метод static, при котором есть переменные $IF_ADDRESS, $IF_NETMASK и $IF_GATEWAY, при методе dhcp их нет.
Так что нет, не то.
Это печально. Тогда, действительно, придётся как-то вытягивать route из системы.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн koshev

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1708
  • חתול המדען
    • Просмотр профиля
Re: ifupdown, method dhcp, router variable
« Ответ #4 : 22 Март 2012, 16:06:58 »
Решено переходом с dhclient на udhcpc.
OpenWrt 19.07

 

Страница сгенерирована за 0.086 секунд. Запросов: 25.