Tentando entender a maneira correta de criar uma rota estática no CentOS, por favor, ajude

8

Eu tenho tentado entender qual é a maneira correta de adicionar uma rota estática em uma máquina do CentOS 6.x. Em alguns fóruns eles dizem para criar um arquivo chamado route-dev_name (por exemplo route-eth0) com a rota relevante e colocá-lo em /etc/sysconfig/network-scripts , em alguns fóruns eles dizem que o arquivo deve ser nomeado static-routes , em ambos os casos eu sou incapaz de definir uma rota estática. Parece que em algumas versões do CentOS ele funciona apenas ao nomear o arquivo route-dev_name e em alguns ele só funciona ao nomear o arquivo static-routes .. Alguém pode me ajudar por favor? Este é o conteúdo do meu arquivo de rota:

192.168.20.0/24 via 192.168.20.253 dev eth0

Obrigado antecipadamente

    
por Itai Ganot 17.02.2014 / 15:49

5 respostas

6

As rotas dependentes do dispositivo de estilo RH definidas usando /etc/sysconfig/network-scripts/route-device arquivos causaram muitos problemas.

Portanto, os administradores reais usam apenas o arquivo /etc/sysconfig/static-routes sem dependência de dispositivo:

any net 10.0.0.0 netmask 255.255.255.0 gw 192.168.0.1

Problemas:

  • Quando os dispositivos físicos são ligados, você precisa lembrar também do arquivo route- dispositivo do acaso
  • Quando você reorganiza os adaptadores em uma máquina virtual.

Naturalmente, deve-se sempre usar dispositivos bridge , para que se possa evitar problemas no arquivo route- dispositivo .

Observe também a sintaxe no arquivo /etc/sysconfig/static-routes , sniplet de /etc/init.d/network :

    # Add non interface-specific static-routes.
    if [ -f /etc/sysconfig/static-routes ]; then
       if [ -x /sbin/route ]; then
           grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do
               /sbin/route add -$args
           done
       else
           net_log $"Legacy static-route support not available: /sbin/route not found"
       fi
    fi
    
por 05.09.2015 / 11:10
8

Crie um arquivo em / etc / syconfig / network-scripts / route-eth0

adicione adicionar o seguinte

192.168.20.0/24 via 192.168.20.253 dev eth0

Eu sempre usei essa abordagem. Eu descobri que esta é a melhor abordagem.

FYI: verifique - link

    
por 17.02.2014 / 16:58
3

Existe uma maneira mais fácil de adicionar rotas ...

Este arquivo - /etc/init.d/network - é iniciado quando o PC está inicializando, e usa um arquivo /etc/sysconfig/static-routes para adicionar rotas estáticas

Você precisa criá-lo porque ele não existe.

Se você ler atentamente o arquivo /etc/init.d/network , ele lerá neste arquivo cada linha para adicionar rotas, essa linha deve começar por "any", e "route add -" já é conhecido.

Assim, no arquivo, você criará > > / etc / sysconfig / static-routes, você tem que escrever:

any net 10.0.0.0 netmask 255.255.255.0 gw 192.168.0.1 eth0
  • em que 10.0.0.0/24 é a rede que você deseja alcançar (255.255.255.0 é a máscara)
  • em que gw 192.168.0.1 é o gateway a ser acessado (certamente o roteador)
  • onde eth0 é a interface onde usar.

Esta é a melhor maneira de adicionar rotas estáticas, um arquivo para tudo (não arquivos X para interfaces X)

    
por 06.12.2014 / 14:42
1

Eu sempre uso a abordagem do arquivo route-ethX no meu CentOS 6.4 e 6.5:

Crie / edite o arquivo /etc/sysconfig/network-scripts/route-ethX (onde X é o número da sua interface) e defina sua rota neste arquivo:

192.168.20.0/24 via 192.168.20.253 dev eth0

Você também pode editar esse arquivo usando o seguinte formato (pessoalmente, prefiro a primeira sintaxe):

GATEWAY0=192.168.20.253
NETMASK0=255.255.255.0
ADDRESS0=192.168.20.0

Em seguida, reinicie a rede para aplicar as alterações:

service network restart

Outras leituras: link

    
por 17.02.2014 / 17:49
0

Em / etc / sysconfig / network-scripts há um script ifup-routes . Procura arquivos com o nome route-dev_name, por ex. route-eth0.

    
por 17.02.2014 / 17:02