Теряется ifconfig_msk0_alias0
Добавлено: 2016-10-28 20:39:03
Здравствуйте, Уважаемые Форумчане!
В связи с определёнными Обстоятельствами, понадобилось назначить Серваку Два IP-Адреса на Один Сетевой Интерфейс: и перезапуску Сети
Но данное Решение «не переживает» передёргивания Сетевого Кабеля (EtherNet) или, как вариант, временного отключения Питания на Сетевом Коммутаторе. То есть после подобных Происшествий ifconfig показывает только Один IPшник, полученный по DHCP, а про Алиас «забывает». Если сделать
, то указанный Алиас сохраняется. Также примечательно, что если в /etc/rc.conf написать что-нибудь вроде , то после /etc/rc.d/netif restart новый MAC-Адрес присваивается и запоминается при любых Действиях, до Перезагрузки.
В связи с ВышеСказанным, возникает Вопрос: Какие существуют Методы для сохранения ifconfig_msk0_alias0 после временного пропадания Связи или какие Скрипты запускаются автоматически, когда FreeBSD обнаруживает Установление Подключения?
В /var/log/messages появляются Сообщения вида:
Но Мне как-то не очень хочется редактировать /etc/rc.d/dhclient (добавлять туда Команду типа ifconfig msk0 alias 192.168.1.1/29), т.к. Это ИдеаЛогически НеПравильно.
Также приходит на Ум Решение проверять Состояние Сети по Cronу и, в случае НеСоответствия запускать всё тот же /etc/rc.d/netif restart, но такое решение выглядит достаточно Топорным, а хочется сделать Изящно и Правильно, да так чтобы лишний раз не дёргать CPU и не отваливать Сеть на 5 Секунд (Время выполнения /etc/rc.d/netif restart)
Заранее Спасибо Всем, кто дочитал до этого места.
В связи с определёнными Обстоятельствами, понадобилось назначить Серваку Два IP-Адреса на Один Сетевой Интерфейс:
- 1. Динамический, Получается от Провайдера по DHCP.
2. Статический, Задан для Локалки, известен и не меняется.
Код: Выделить всё
ifconfig_msk0="DHCP"
ifconfig_msk0_alias0="inet 192.168.1.1 netmask 255.255.255.248"
Код: Выделить всё
/etc/rc.d/netif restart
Код: Выделить всё
root@Server:~# ifconfig
ath0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 2290
ether 00:34:36:cc:5c:3b
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
media: IEEE 802.11 Wireless Ethernet autoselect (autoselect)
status: no carrier
msk0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8010a<TXCSUM,VLAN_MTU,TSO4,LINKSTATE>
ether 00:38:54:c1:bb:a0
inet 192.168.1.1 netmask 0xfffffff8 broadcast 192.168.1.7
inet 23.262.46.102 netmask 0xffffe000 broadcast 23.262.63.255
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect (100baseTX <full-duplex,flowcontrol,rxpause,txpause>)
status: active
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
inet 127.0.0.1 netmask 0xff000000
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
Код: Выделить всё
ifconfig msk0 down && ifconfig msk0 up
Код: Выделить всё
ifconfig_msk0_alias0="ether 00:38:54:c1:bb:a2"
В связи с ВышеСказанным, возникает Вопрос: Какие существуют Методы для сохранения ifconfig_msk0_alias0 после временного пропадания Связи или какие Скрипты запускаются автоматически, когда FreeBSD обнаруживает Установление Подключения?
В /var/log/messages появляются Сообщения вида:
Код: Выделить всё
Oct 28 17:44:59 Server kernel: msk0: link state changed to DOWN
Oct 28 17:45:01 Server kernel: msk0: link state changed to UP
Oct 28 17:45:01 Server devd: Executing '/etc/rc.d/dhclient quietstart msk0'
Oct 28 17:45:09 Server dhclient: New IP Address (msk0): 23.262.46.102
Oct 28 17:45:09 Server dhclient: New Subnet Mask (msk0): 255.255.224.0
Oct 28 17:45:09 Server dhclient: New Broadcast Address (msk0): 23.262.63.255
Oct 28 17:45:09 Server dhclient: New Routers (msk0): 23.262.32.1
Также приходит на Ум Решение проверять Состояние Сети по Cronу и, в случае НеСоответствия запускать всё тот же /etc/rc.d/netif restart, но такое решение выглядит достаточно Топорным, а хочется сделать Изящно и Правильно, да так чтобы лишний раз не дёргать CPU и не отваливать Сеть на 5 Секунд (Время выполнения /etc/rc.d/netif restart)
Заранее Спасибо Всем, кто дочитал до этого места.