Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 5217|Resposta: 3

O Docker usa Macvlan para definir um endereço IP independente para contêineres

[Copiar link]
Publicado em 19/11/2022 12:01:56 | | | |
Requisitos: Quero atribuir um endereço IP de LAN independente ao container Docker através do serviço DHCP do roteador, para que a aplicação Core desenvolvida ASP.NET possa ser implantada em múltiplos servidores (a aplicação precisa ser implantada em vários servidores para alcançar alta disponibilidade), e então eles possam ser transferidos entre si.
Algumas aplicações, especialmente aquelas legadas ou que monitoram o tráfego de rede, esperam se conectar diretamente à rede física. Nesse caso, você pode usar o driver de rede macvlan para atribuir um endereço MAC à interface virtual de rede de cada container, fazendo com que pareça uma interface física que se conecta diretamente à rede física. Nesse caso, você precisa especificar uma interface física no seu host Docker para macvlan. E. sub-redes e gateways de Macvlan. Você pode até isolar sua rede com uma interface física diferente.


A placa de rede também pode ser virtualizada? Explicação detalhada da tecnologia de virtualização de placas de rede Macvlan
https://www.itsvse.com/thread-10388-1-1.html
Primeiro, você precisa definir a placa física da máquina hostPermite o modo "promíscuo"Por exemplo, usando o ESXI como exemplo, configure um switch virtual da seguinte forma:



O ambiente do sistema é o seguinte:

CentOS Linux versão 7.9.2009 (Core)
Docker versão 20.10.20, build 9fdeb9c


Instale o serviço Docker no host do CentOS 7. (omitido)



Prepararnet.ipv4.ip_forward = 1, você pode visualizar a configuração atual através do sysctl -a, se não for 1, por favor modifique para 1, o tutorial foi omitido. O principal objetivo é determinar se as informações recebidas por uma placa de rede podem ser passadas para outras placas de rede quando o host Linux possui múltiplas placas de rede, e se estiver configurado para 1, o encaminhamento de pacotes pode ser realizado.

Quando o serviço Docker for instalado, crie uma rede macvlan com o seguinte comando:

--ip-range: Decidido atribuir o subconjunto ao Docker 192.168.50.192/27, que é um intervalo de 32 endereços começando em 192.168.50.192 e terminando em 192.168.50.223.
--gateway: Defina o endereço do gateway, geralmente o IP do roteador, por favor, defina de acordo com sua situação real
-o pai: A interface pai, que é o nome da placa física de NIC do host, pode ser visualizada via IP A de acordo com a situação real.


Após a criação ser concluída, você pode visualizá-la com o seguinte comando:



Tente iniciar um container busybox e configurar uma rede com a recém-criada macvlan com o seguinte comando:

Dica: Se necessário, dê o recipientePara definir o endereço IP, use o parâmetro --ip, por exemplo: --ip=192.168.50.210

Você pode visualizar o endereço IP de um contêiner usando o seguinte comando:



Claro, você também pode entrar no contêiner para visualizá-lo, com o seguinte comando:



NósUsando outras máquinas na LAN, tente pingar o endereço IP do contêiner, você pode descobrir que pode pingar, como mostrado na figura abaixo:



Olhando a tabela de mapeamento IP e MAC do roteador, você pode ver que o endereço MAC/IP do contêiner docker é o mesmo do roteador, como mostrado na figura abaixo:



Tente iniciar novamente um contêiner Redis e configurar a nova rede MacVLAN com o seguinte comando:

O próprio host do CentOS também tem uma aplicação Redis rodando e está usando a porta 6379, e criamos uma aplicação contêiner Redis que também usa a porta 6379, ou seja.A mesma porta host, 6379, é ouvida por dois IPs diferentes, tente ver se funciona.

Os resultados dos testes estão todos funcionando normalmente, como mostrado na figura abaixo:





Recursos

O login do hiperlink está visível.




Anterior:A placa de rede também pode ser virtualizada? Explicação detalhada da tecnologia de virtualização de placas de rede Macvlan
Próximo:[Prática] Use a penetração de intranet FRP para obter conexão remota na área de trabalho
Publicado em 28/11/2022 19:30:39 |
Aprenda a aprender...
Publicado em 12/03/2023 09:18:32 |
Aprenda a aprender
Publicado em 22/04/2023 15:45:19 |
Obrigado por compartilhar.
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com