Por que a interface eth0 padrão está inativa por padrão no CentOS?

Por que a interface eth0 padrão está inativa por padrão no CentOS?

Já estou um pouco familiarizado com distros Linux como Debian ou Ubuntu (sim, muito parecidos), mas queria experimentar o Red Hat baseado - CentOS 6.2. Instalei-o no meu host Windows 7 no VirtualBox e tentei brincar um pouco com ele.

Me deparei com um pequeno problema, a saber: a eth0interface padrão está inativa por padrão. Eu uso a opção com NAT (a máquina virtual está ‘atrás’ do host). Mesmo se eu usar a interface ifconfig eth0 up, ela não funcionará imediatamente. Eu entendo isso depois de abrir a interface:

eth0      Link encap:Ethernet  HWaddr 08:00:27:0F:00:8A
          inet6 addr: fe80::a00:27ff:fe0f:8a/64 Scope:Link
          UP BROADCAST RUNNNING MULTICAST MTU:1500 Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carriers:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:468 (468.0 b)
          Interrupt:19 Base address:0xd020

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

virbr0    Link encap:Ethernet  HWaddr 52:54:00:75:C2:9B
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
[root@centos ~]# _

O que mais deveria ser feito para configurar a rede na máquina CentOS?

Responder1

Editar /etc/sysconfig/network-scripts/ifcfg-$IFNAME. Altere o ONBOOTvalor da linha para yes.

$IFNAMEestará eth0em muitas caixas EL6, mas em caixas usando oNomenclatura consistente de dispositivos de redeesquema, pode ser outra coisa, como en3p1. Este esquema é opcional no EL6, mas é padrão no EL7 e mais recentes. Use o comando ip linkpara obter uma lista de interfaces de rede, incluindo aquelas que estão inativas no momento.

Em suas instalações futuras, preste mais atenção. Você passou por uma opção na seção de configuração de rede que permite solicitar a inicialização da interface. Esta opção de inicialização está desativada por padrão no EL6 e posteriores, enquanto nas versões anteriores estava ativada por padrão.

Para fazer com que a interface de rede seja ativada na primeira inicialização no momento da instalação, vá para a guia ConfigureGeneralna tela de configuração de rede e marque a caixa rotulada Automatically connect to the network when available.

Quanto apor queeles mudaram isso, eu acho que por razões de segurança. Isso lhe dá a chance de restringir um pouco as configurações padrão antes de abrir a interface de rede pela primeira vez, expondo a caixa ao mundo exterior.

Responder2

Se você não tiver um servidor DHCP em sua rede, deverá definir um endereço IP estático. Considere o seguinte exemplo:

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

BOOTPROTO=none
DEVICE=eth0
IPADDR=192.168.1.10 # your IP address
NETMASK=255.255.255.0 # your netmask
NETWORK=192.168.1.0 
ONBOOT=yes

Adicione GATEWAY ao seu /etc/sysconfig/networkarquivo:

NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=hostname.domainname
GATEWAY=192.168.1.1 # your gateway

Emita o seguinte comando para iniciar a rede na inicialização:

chkconfig network on

Reinicie seu serviço de rede:

service network restart

Dê uma olhada em suas interfaces de rede

ifconfig

Responder3

Você não mencionou qual versão do CentOS está usando. Se não me engano, o 6.x usa o NetworkManager por padrão.

Raramente instalo o X Windows em meus servidores, então o NetworkManager é uma dor para mim. Eu o desabilito e habilito o serviço de ‘rede’ padrão.

chkconfig NetworkManager desligado
chkconfig rede ligada

serviço NetworkManager parar
serviço rede iniciar

Para habilitar o DHCP na interface, execute system-config-network, edite o dispositivo apropriado, salve e reinicie o serviço de rede. Como alternativa, você pode editar /etc/sysconfig/network-scripts/ifcfg-eth0e adicionar

ONBOOT=yes
BOOTPROTO=dhcp

Salve as alterações e reinicie o serviço de rede.

Responder4

Pelo que reuni em experiências e leituras, concordo que o Network Manager parece carregar por padrão, mas o serviço de rede não.

Quando recentemente tive um host VM inicializando sem que eth0 aparecesse na saída ifconfig, foi porque o Network Manager estava em execução, a rede não estava em execução e NM_CONTROLLED=noem meu /etc/sysconfig/network-scripts/ifcfg-eth0arquivo.

Assim que executei service network restart, eth0 apareceu na saída do ifconfig. A reinicialização, no entanto, fez com que ele desaparecesse novamente.

A solução para mim parece ser configurar e NM_CONTROLLED=no, /etc/sysconfig/network-scripts/ifcfg-eth0em seguida, ativar o serviço de rede na inicialização ( chkconfig network on, como apontam uther e alexnorthsoul). Eu poderia (deveria?) provavelmente desligar o NetworkManager por padrão, mas agora está funcionando para mim e estou nervoso em tocar em qualquer outra coisa.

A propósito, meu objetivo era fazer com que o sistema honrasse o IP estático selecionado. Quando deixei o NetworkManager em execução e configurei NM_CONTROLLED=yes(ou omiti), eth0 apareceu no ifconfig, mas o endereço era um endereço DHCP, não meu IP estático. Portanto, desligar o NetworkManager me poupou do DHCP e ligar a rede fez com que ele carregasse minhas configurações que incluíam o IP estático.

Não sou administrador de sistemas, mas sim um desenvolvedor, portanto, essas não são palavras de um especialista em CentOS, mas apenas de um sobrevivente da configuração das VMs de que precisava.

informação relacionada