Criação e uso de ENI mesclados em um único tópico; configuração de rota otimizada
Instruções de configuração de rota para Windows adicionadas
Exemplos adicionados para referência do usuário
Configure tabelas de rotas e regras de roteamento para ENIs a fim de controlar como as instâncias ECS enviam e recebem tráfego por várias interfaces de rede.
Configurar rotas baseadas em políticas para ENIs
O roteamento baseado em políticas encaminha o tráfego por interfaces de rede específicas com base em regras predefinidas, em vez de depender exclusivamente das rotas padrão. Isso permite um controle granular do tráfego em múltiplas ENIs.
Casos de uso
Comunicação em ambiente com múltiplas ENIs: Ao utilizar ENIs secundárias com EIPs ou gateways NAT, o tráfego de resposta pode sair pela ENI primária devido à maior prioridade de sua rota padrão. Rotas baseadas em políticas aplicam o princípio de entrada e saída pela mesma origem, garantindo que o tráfego entre e saia pela mesma ENI.
Balanceamento de carga de tráfego: Distribua o tráfego de saída por várias ENIs definindo regras de roteamento quando as rotas padrão não atenderem aos seus requisitos.
Controle de acesso: Restrinja o tráfego a interfaces ou caminhos específicos com base em endereços de source, endereços de destino ou outros parâmetros para isolamento de rede.
Pré-requisitos
-
As ENIs estão vinculadas a uma instância ECS.
Consulte a seção Vincular uma ENI a uma instância ECS no tópico "Crie e gerencie ENIs".
-
As ENIs estão ativas no sistema operacional da instância ECS.
Consulte a seção Configurar ENIs para entrar em vigor em uma instância ECS no tópico "Crie e gerencie ENIs".
Procedimento
Os exemplos a seguir utilizam uma ENI secundária chamada eth1. Substitua os identificadores de ENI e endereços IP pelos seus valores reais.
Instância Linux
-
Crie uma tabela de rotas para uma ENI e adicione uma regra de rota:
ip -4 route add default via <Gateway of eth1> dev eth1 table 1001 ip -4 rule add from <IP address of eth1> lookup 1001Por exemplo, crie uma tabela de rotas chamada 1001 para eth1 e adicione uma regra para que pacotes provenientes de 172.16.20.193 sejam roteados por eth1:
ip -4 route add default via 172.16.20.253 dev eth1 table 1001 ip -4 rule add from 172.16.20.193 lookup 1001 -
Torne a configuração de rota persistente entre reinicializações.
Adicione o comando de rota à configuração de inicialização da instância para torná-lo persistente. Caso contrário, a rota será perdida após uma reinicialização. Ignore esta etapa se estiver apenas testando.
-
Abra
/etc/rc.local:vim /etc/rc.local -
Pressione
ipara insira no modo de inserção, adicione o comando da etapa anterior e pressioneEsc. Insira:wqe pressione Enter para salve e fechar o arquivo.NotaSubstitua o identificador da interface de rede e o endereço do gateway pelos seus valores reais.
-
Conceda permissões de execução em
/etc/rc.local:sudo chmod +x /etc/rc.local
-
-
Verifique se a tabela de rotas e a regra foram criadas:
ip route list table 1001 && \ ip rule listA saída a seguir confirma que a tabela de rotas e a regra estão configuradas:

Instância Windows
-
Crie uma rota baseada em política para uma ENI:
route add -p <Destination network> mask <Subnet mask> <Gateway> if <Interface index> metric <Route priority>Neste exemplo, utiliza-se uma ENI chamada Ethernet 2. O comando a seguir roteia todos os pacotes de 172.16.12.76 pelo gateway em
172.16.12.253:route add -p 0.0.0.0 mask 0.0.0.0 172.16.12.253 if 6 metric 1Parâmetros:
-p: torna a rota permanente. Sem
-p, a rota é temporária e perdida após uma reinicialização.Rede de destino:
0.0.0.0indica a rota padrão, usada quando nenhuma rota específica corresponde.-
Máscara de sub-rede e gateway: Execute
ipconfigpara visualize esses valores, conforme mostrado abaixo.
-
Índice da interface: Execute
netsh interface ipv4 show interfacespara visualize o índice, conforme mostrado abaixo.
Prioridade da rota: especificada no formato metric <n>. Um valor menor indica uma prioridade mais alta.
-
Execute
route printpara verifique se a rota aparece na lista de rotas.
Exemplo
Este exemplo demonstra como configurar rotas baseadas em políticas para que uma instância ECS executando Alibaba Cloud Linux 3.2 receba pacotes pela ENI secundária (eth1) e envie pacotes de resposta por eth1 em vez da ENI primária (eth0). Se suas políticas de segurança incluírem uma lista de permissões de IP de source para ENIs específicas, caminhos de tráfego incompatíveis farão com que solicitações legítimas sejam rejeitadas. As rotas baseadas em políticas resolvem esse problema.
-
Prepare o ambiente.
-
Crie uma instância ECS.
Consulte Criar uma instância na aba Custom Launch.
-
Vincule uma ENI secundária à instância ECS.
Consulte Vincular uma ENI secundária.
-
Solicite um Elastic IP Address (EIP) e associe-o à ENI secundária eth1 no modo NAT.
Consulte Associar um EIP a uma ENI secundária.

-
Prepare um cliente de teste.
Utilize outra instância ECS com acesso à Internet ou um computador local como cliente de teste.
-
Adicione uma regra de entrada a um grupo de segurança da instância ECS para permitir o acesso do endereço IP público do cliente de teste. Em seguida, execute ping <EIP> no cliente de teste para verificar a conectividade com o EIP associado na Etapa c.

Consulte a seção Caso 4: Permitir apenas tráfego de protocolos específicos para acessar instâncias ECS no tópico "Diretrizes para uso de grupos de segurança e casos de uso".
-
-
Envie pacotes do cliente de teste para a instância ECS:
ping 47.xx.xx.109Substitua o endereço IP pelo EIP associado a eth1.
-
Monitore pacotes ICMP tanto em eth0 quanto em eth1 da instância ECS.
-
Capture pacotes ICMP em
eth0:tcpdump -i eth0 icmp -
Abra uma nova janela e capture pacotes ICMP em
eth1:tcpdump -i eth1 icmp
-
-
Visualize os resultados.
Rota baseada em política não configurada
Os pacotes entram por eth1, mas os pacotes de resposta saem por eth0. A instância recebe em eth1 e responde em eth0.

A rota padrão de eth0 tem prioridade 100, superior à de eth1, portanto os pacotes são enviados por eth0.

Rota baseada em política configurada
-
Configure rotas baseadas em políticas. Consulte a seção Configurar rotas baseadas em políticas para ENIs deste tópico.
ip -4 route add default via 172.16.20.253 dev eth1 table 1001 ip -4 rule add from 172.16.20.177 lookup 1001 Execute
ping <EIP>no cliente de teste.-
Monitore pacotes ICMP nas ENIs.
Agora os pacotes entram e saem por eth1. A instância envia e recebe pela mesma ENI com base no princípio de entrada e saída pela mesma origem.

-
Configurar rotas padrão para ENIs
As rotas padrão são configuradas automaticamente ao vincular ENIs a instâncias ECS. No entanto, em algumas versões de SO anteriores ao Ubuntu 18, como o Ubuntu 16, as rotas padrão podem não ser configuradas para ENIs secundárias, o que causa problemas de conectividade de rede. Siga estas etapas para configurar manualmente uma rota padrão.
Neste exemplo, utilizam-se Ubuntu16 e a ENI secundária eth1.
-
Visualize as informações da ENI:
ip a
A saída mostra que eth1 está ativa no sistema operacional.
-
Visualize as informações de rota:
route -nA saída indica que eth1 possui apenas uma rota interna e nenhuma rota de saída.

-
Configure a rota padrão para eth1:
ip -4 route add default via 172.16.20.253 dev eth1 metric 200-4: aplica-se apenas a endereços IPv4.172.16.20.253: o endereço do gateway de eth1.metric 200: a prioridade da rota. Um valor menor indica uma prioridade mais alta. Quando existem múltiplas rotas para o mesmo destino, utiliza-se a rota com a menor métrica.
-
Torne a configuração de rota persistente entre reinicializações.
Adicione o comando de rota à configuração de inicialização da instância para torná-lo persistente. Caso contrário, a rota será perdida após uma reinicialização. Ignore esta etapa se estiver apenas testando.
-
Abra
/etc/rc.local:vim /etc/rc.local -
Pressione
ipara insira no modo de inserção, adicione o comando da etapa anterior e pressioneEsc. Insira:wqe pressione Enter para salve e fechar o arquivo.NotaSubstitua o identificador da interface de rede e o endereço do gateway pelos seus valores reais.
-
Conceda permissões de execução em
/etc/rc.local:sudo chmod +x /etc/rc.local
-
-
Visualize a rota adicionada para eth1:
route -n

