Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 64|Svar: 0

UNIX Domain Socket (UDS) över TCP-kommunikation

[Kopiera länk]
Publicerad på 2026-03-02 14:03:34 | | | |
Krav: Anta att ett program på server A bara har UDS-lyssning aktiverat, vad ska server B göra om det vill anropa ett program på server A? Du kan använda UNIX Domain Socket (UDS) över TCP för att vidarebefordra en process från server A till server B.

recension
Nginx reverse proxy php-fpm använder UDS för att kommunicera
https://www.itsvse.com/thread-11068-1-1.html

Nginx reverse proxy ASP.NET Core använder UDS-kommunikation
https://www.itsvse.com/thread-11069-1-1.html

.NET/C#-processer kommunicerar mellan gRPC- och Unix-domänsocklar
https://www.itsvse.com/thread-11051-1-1.html

UNIX-domänsocklar är en mekanism för kommunikation mellan processer baserat på filvägar, snarare än filer på filsystemet. Även med SFTP eller SSHFS kan UNIX-domänsocklar inte nås över nätverket.

socat använder UNIX-domänsocklar

Installationskommandon:
Starta servern

Först, låt oss säga att en serverprocess /tmp/example-server.sock lyssnar efter en server som heter "server-program". /tmp/example-server.sock Om du kan ansluta till denna socket från en annan värd och komma åt den, kan du säga att du har kunnat överträffa nätverket genom att använda det som en UNIX-domänsocket.

Om du bara vill testa det kan du använda Socat.
Testanrop, kommandot är följande:
Som visas nedan:



Eller koppla upp med socat-kommandot, som visas nedan:



Använd TCP-anslutningar

Använd socat-kommandot på värden där serverprocessen körs.
Koppla till TCP från fjärrvärden

Den lyssnar efter UNIX-domänsockeln med samma namn och kopplar den till värden där serverprocessen körs.
Använd klienten på fjärrvärden

Nu när allt är klart, låt oss ansluta till servern via nätverket. Om du också vill testa det kan du använda Socat.

Använd OpenSSH

Om du har SSH-åtkomst finns det ett enklare sätt. /tmp/example-server.sock Först, starta servervärden (utelämnad). Använd -L på klientvärden. Kommandot är följande:
Den är nu tillgänglig från klientvärden.




Föregående:Front-end prestandaoptimering: Överge XMLHttpRequest till förmån för hämtgränssnitt
Nästa:En kort introduktion till nätverks-ICMP (Internet Control Message Protocol).
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com