2

У меня есть машина CentOS 7 с 2 сетевыми картами, eth0 и eth1. Я отключил eth0 (так как он мне не понадобится для моих настроек), отредактировав его конфигурацию и настройки:

ONBOOT="no"

И после того, как я настроил eth1 (мой сетевой интерфейс) как следующий, он все еще не будет запрашивать DHCP:

DEVICE="eth1"
ONBOOT="yes"
NM_CONTROLLED="no"
BOOTPROTO="dhcp"
IPADDR="10.0.0.5" # This is the IP assigned to this machine on the private network.
NETMASK="255.255.0.0"
IPV6INIT="no"
MTU="1450"

Теперь каждый раз, когда я перезагружаю систему, мне приходится вручную использовать команду dhclient eth1 чтобы она получала адрес DHCP. Что еще я могу сделать, чтобы решить эту проблему? Я думал, что установка BOOTPROTO была ключом!

2 ответа2

1

Вы должны создать 2 виртуальных интерфейса для вашего второго сетевого адаптера: eth1 для DHCP и eth1:1 для вашей частной сети.

В конфигурации для eth1 (файл /etc/sysconfig/network-scripts/ifcfg-eth1) вы должны использовать DEVICE="eth1" , BOOTPROTO="dhcp" а не IPADDR и NETMASK .

В конфигурации для eth1:1 (файл /etc/sysconfig/network-scripts/ifcfg-eth1:1) вы должны настроить статические параметры для локальной сети, такие как IPADDR , NETMASK , GATEWAY и (это важно!) DEVICE="eth1:1" и BOOTPROTO="static" .

В результате ваши файлы конфигурации должны выглядеть примерно так:

/ И т.д. / sysconfig / сети-скрипты / ifcfg-eth1:

DEVICE="eth1"
ONBOOT="yes"
NM_CONTROLLED="no"
BOOTPROTO="dhcp"
IPV6INIT="no"
MTU="1450"


/ И т.д. / sysconfig / сети-скрипты / ifcfg-eth1:1:

DEVICE="eth1:1"
ONBOOT="yes"
NM_CONTROLLED="no"
BOOTPROTO="static"
IPADDR="10.0.0.5" # This is the IP assigned to this machine on the private network.
NETMASK="255.255.0.0"
IPV6INIT="no"
MTU="1450"

В этом случае ваша система загрузится с правильной конфигурацией сети.

PS: если вам не нужен прямой доступ к вашей частной сети 10.0.X.X больше, вы можете использовать только первый конфигурационный файл /etc/sysconfig/network-scripts/ifcfg-eth1 .

1

Если вы уже установили « BOOTPROTO=dhcp », вам не нужно указывать IPADDR, NETMASK и GATEWAY, потому что он их обойдет. А для dhcp используйте вот так:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
NAME=eth1
UUID=ACCORDING_TO_YOURS
DEVICE=eth1
ONBOOT=yes

И после сохранения файла, просто перезапустите сервис для перекрестной проверки.

# systemctl restart network

ПРИМЕЧАНИЕ. Сначала проверьте, является ли ваша сеть статической или dhcp.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .