Soquete de domínio Unix com VM

1

É uma afirmação verdadeira que, a memória compartilhada não funciona entre um sistema operacional hospedeiro e um sistema operacional convidado, mas um Socket de Domínio Unix (especificamente o udp) pode se comunicar entre os dois?

Uma explicação detalhada seria apreciada, obrigado!

    
por user_ABCD 27.04.2016 / 18:52

1 resposta

2

Em geral, os Sockets de Domínio Unix não podem se comunicar entre o sistema operacional host e o sistema operacional convidado.

Unix Domain Sockets s�, por exemplo, Pipes nomeados, vinculados ao kernel do sistema operacional. Se você abrir o mesmo nó de arquivo Unix Domain Socket no host e no convidado, obterá duas conexões de rede virtual diferentes. Um no kernel do host e um no kernel convidado. Estes são completamente separados e não podem intercomunicar-se.

Isso não se aplica se o sistema operacional host e o sistema operacional convidado compartilharem o mesmo kernel, por exemplo, ao usar namespaces / containers do Linux em vez da virtualização real . Então é possível usar o Sockets de Domínio Unix para se comunicar entre os sistemas.

Para a comunicação entre dois kernels diferentes, você precisa usar um protocolo de rede real como o IPv4 / IPv6 ou medidas específicas para o software de virtualização usado.

    
por 27.04.2016 / 20:53