segundo endereço IP na mesma interface, mas em uma sub-rede diferente

10

É possível no CentOS 5.7 64bit ter um segundo endereço IP em uma interface (por exemplo, eth0) - alias interface configuration - em uma sub-rede diferente?

Aqui está a configuração original para eth0

more etc/sysconfig/network-scripts/ifcfg-eth0
# Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.91.255
HWADDR=00:1D:09:FE:DA:04
IPADDR=192.168.91.250
NETMASK=255.255.255.0
NETWORK=192.168.91.0
ONBOOT=yes

E aqui está a configuração para eth0: 0

more etc/sysconfig/network-scripts/ifcfg-eth0:0
# Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
DEVICE=eth0:0
BOOTPROTO=static
BROADCAST=10.10.191.255
DNS1=10.10.15.161
DNS2=10.10.18.36
GATEWAY=10.10.191.254
HWADDR=00:1D:09:FE:DA:04
IPADDR=10.10.191.210
NETMASK=255.255.255.0
NETWORK=10.39.191.0
ONPARENT=yes

Como o arquivo resolv.conf deve mudar, pois existem dois gateways diferentes? Alguma outra mudança necessária?

fptstl
fonte

Respostas:

4

É possível ter um segundo endereço IP em uma interface (por exemplo, eth0) - configuração de interface de alias - em uma sub-rede diferente?

Claro, nada impedindo você de fazer isso. As interfaces de rede verão transmissões para as outras duas sub-redes, mas isso provavelmente não fará uma grande diferença, a menos que você tenha uma rede realmente ocupada.

Como o arquivo resolv.conf deve mudar, pois existem dois gateways diferentes? Alguma outra mudança necessária?

Você não pode ter 2 gateways padrão. Remova um gateway de uma dessas interfaces. Ter 2 desses simplesmente não fará nada de útil. Somente um dos gateways será usado.

A resolução de DNS (resolv.conf) realmente não tem nada a ver com sua configuração de roteamento. No Linux, a resolução DNS é abrangente em todo o sistema e realmente não tem nada a ver com a configuração da interface. Basta colocar alguns servidores DNS válidos no seu resolv.conf. Se você precisar de algo mais avançado para enviar algumas solicitações para diferentes servidores upstream, pode ser necessário instalar algo como DNSMasq.

Zoredache
fonte
Eu queria saber, preciso especificar um gateway por ifcfg-eth0 e um por ifcfg-eth0: 0? [já que cada um deles deve estar em sub-redes diferentes?
fptstl
2

Como já mencionado, não há nada errado em ter duas sub-redes diferentes em uma rede e funcionará desde que você esteja conectado ao mesmo grupo de switches / switches para ambas as redes e não tenha regras de VLAN aplicadas a ela ou qualquer outra segurança zonas.

Independentemente de quantos endereços / sub-redes IP você tenha, sempre existe apenas um gateway padrão. Um gateway padrão é usado quando um endereço IP não corresponde a nenhuma outra rota na tabela de roteamento. Portanto, no seu exemplo, para cada solicitação que não faça parte da rede 192.168.91.0/24 ou 10.10.191.0/24, será redirecionado para o gateway padrão.

Mas se desejar, você ainda pode adicionar rotas manuais. Então, digamos que você tenha uma terceira rede privada 10.10.200.0/24, acessível através de 10.10.191.0/24. Você precisa adicionar uma rota estática:

ip route add 10.10.200.0/24 via 10.10.191.254 dev eth0:0

O Resolv.conf não tem nada a ver com o gateway e é usado para resoluções de DNS. Tenha uma lida aqui para mais informações.

golja
fonte
0

Normalmente, o arquivo /etc/resolv.conf é um arquivo de configuração para a opção relacionada ao DNS (servidor de nomes, domínio de pesquisa, ecc). Em uma distribuição baseada em Red-Hat, sugiro que você crie dois arquivos:

/ etc / sysconfic / script de rede / route-eth0
/ etc / sysconfic / script de rede / route-eth0: 0 (eu nunca vi isso)

Em cada um deles, você pode definir toda a opção de rota para a interface específica.

Isto está incorreto. Embora seja aceitável nos sistemas RHEL / CentOS manipular interfaces Ethernet em vários arquivos, o roteamento é tratado de maneira diferente. As rotas para uma interface específica devem ser coletivamente colocadas em um único arquivo para essa interface. Em outras palavras, se você precisar de rotas personalizadas para eth0: 1, eth0: 2 e eth0: 3, elas deverão ser todas colocadas em:

/etc/sysconfig/network-script/route-eth0

Nada como: 1 pode ser anexado ao nome do arquivo.

Uma resposta anterior sugeriu a criação de um arquivo para a nova interface:

/etc/sysconfig/network-scripts/ifcfg-eth0:1 

Isso está correto, mas você não deve colocar a diretiva GATEWAY = nela. Isso resultará na criação de vários gateways padrão, o que faz com que o roteamento se comporte incorretamente. Deixe a opção GATEWAY = desativada e adicione a rota necessária para:

/etc/sysconfig/network-script/route-eth0
John Pace II
fonte
1
Parece que você está tentando comentar outra resposta em vez de responder à pergunta. Você deve editar sua resposta para se concentrar em responder à pergunta.
kasperd
0

Normalmente, o arquivo /etc/resolv.conf é um arquivo de configuração para a opção relacionada ao DNS (servidor de nomes, domínio de pesquisa, ecc). Em uma distribuição baseada em Red-Hat, sugiro que você crie dois arquivos:

/etc/sysconfig/network-script/route-eth0  
/etc/sysconfig/network-script/route-eth0:0  (I have not ever seen this)

Em cada um deles, você pode definir toda a opção de rota para a interface específica. A regra que você coloca neles será carregada na inicialização. É recomendável que o gateway padrão seja colocado no arquivo / etc / sysconfig / network.

Jero
fonte