У меня есть два сетевых адаптера на моем сервере FreeBSD, которые настроены следующим образом в rc.conf
:
ifconfig_em0="10.0.0.1 netmask 255.255.255.0" # LAN NIC
ifconfig_em1="DHCP" # WAN NIC
Эта настройка не дает никакого маршрута по умолчанию, только (при условии 123.123.123.123
это WAN IP-адрес em1
):
10.0.0.0/24 ---> em0
123.123.123.123/32 ---> em1
Когда я пытаюсь пропинговать IP-адреса WAN, например 8.8.8.8
, Я получил No route to host
. (Почему? Не 123.123.123.123/32
означает почти то же, что и default
?) В любом случае, я могу бежать add route default -iface em1
, а затем IP-адреса WAN направляются через em1
, как и должно быть.
Как сделать интерфейс em1
постоянный маршрут по умолчанию для моей системы? То есть, как я могу сказать add route default -iface em1
в rc.conf
? (Я должен сделать интерфейс маршрута специфичным, а не специфичным для IP-адреса интерфейса, потому что IP-адрес em1 динамически предоставляется моим интернет-провайдером.)
Я безуспешно пробовал следующее:
static_routes="mydefault"
route_mydefault="default -iface em1"
и
defaultrouter="-iface em1"
Ага - полностью переписан, потому что я неправильно понял вопрос!
Похоже, ваш маршрут не подходит, потому что em1
не готов к работе, когда сценарии rc устанавливают маршрутизатор по умолчанию. Вы можете использовать defaultroute_delay
параметр в rc.conf, чтобы система немного подождала, прежде чем вызывать маршруты по умолчанию.
Также, как сказал @arved, вы можете убедиться, что ваш интернет-провайдер отправляет информацию о маршрутизаторе в их аренду DHCP - если вы хотите использовать их шлюз, они должен укажите один, иначе вы сможете подключиться к устройствам только в указанной ими подсети.