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

Vista: 64|Resposta: 0

Soquete de Domínio UNIX (UDS) sobre comunicação TCP

[Copiar link]
Publicado em 02/03/2026 14:03:34 | | | |
Requisitos: Suponha que um programa no servidor A tenha apenas a escuta do UDS ativada, o que o servidor B deve fazer se quiser chamar um programa no servidor A? Você pode usar o UNIX Domain Socket (UDS) sobre TCP para encaminhar um processo do servidor A para o servidor B.

revisar
O proxy reverso Nginx php-fpm usa UDS para se comunicar
https://www.itsvse.com/thread-11068-1-1.html

Nginx reverse proxy ASP.NET Core usam comunicação UDS
https://www.itsvse.com/thread-11069-1-1.html

Processos .NET/C# se comunicam entre sockets de domínio gRPC e Unix
https://www.itsvse.com/thread-11051-1-1.html

Soquetes de domínio UNIX são um mecanismo de comunicação entre processos baseado em caminhos de arquivos, em vez de arquivos no sistema de arquivos. Mesmo com SFTP ou SSHFS, os sockets de domínio UNIX não podem ser acessados pela rede.

Socat utiliza sockets de domínio UNIX

Comandos de instalação:
Inicie o servidor

Primeiro, digamos que um servidor processando /tmp/example-server.sock escute um servidor chamado "server-program". /tmp/example-server.sock Se você conseguir se conectar a esse socket de outro host e acessá-lo, então pode dizer que conseguiu superar a rede usando-a como um socket de domínio UNIX.

Se quiser apenas testar, pode usar o Socat.
Chamada de teste, o comando é o seguinte:
Como mostrado abaixo:



Ou conecte-se usando o comando socat, como mostrado abaixo:



Use conexões TCP

Use o comando socat no host onde o processo servidor está rodando.
Conecte-se ao TCP a partir do host remoto

Ele escuta o socket de domínio UNIX com o mesmo nome e o conecta ao host onde o processo servidor roda.
Use o cliente no host remoto

Agora que tudo está pronto, vamos conectar ao processo servidor pela rede. Se quiser testar também, pode usar o Socat.

Use OpenSSH

Se você tem acesso ao SSH, há um jeito mais fácil. /tmp/example-server.sock Primeiro, inicie o host do servidor (omitido). Use -L no host do cliente. O comando é o seguinte:
Agora está acessível pelo host cliente.




Anterior:Otimização de desempenho front-end: Abandone o XMLHttpRequest em favor de interfaces fetch
Próximo:Uma breve introdução ao ICMP de rede (Protocolo de Mensagens de Controle da Internet).
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