Die bisher beschriebenen Möglichkeiten zur Interprozesskommunikation beschränkten sich auf die Kommunikation von Prozessen eines Rechners. Die Socket-Programmierschnittstelle ermöglicht es auch über Rechnergrenzen hinweg, über ein Netzwerk zu kommunizieren. Dies wird genauer im Abschnitt ''Netzwerkkommunikation'' beschrieben (Netzwerkkommunikation).
Eine spezielle Variante der Sockets, die Unix-Domain-Sockets, bieten jedoch auch auch eine einfache Möglichkeit zur lokalen Kommunikation innerhalb eines Rechners.
Unix-Domain-Sockets werden auf die gleiche Art und Weise erstellt und benutzt wie Sockets zur Netzwerkkommunikation. Man muss nur AF_UNIX bzw. AF_LOCAL als Adressfamilie beim socket() Aufruf angeben. Dann kann man mit Hilfe der Struktur sockaddr_un einen Dateinamen angeben, der den Socket im lokalen Dateisystem repräsentiert [include/linux/un.h]:
Auch wenn ein Socket von mehreren Prozessen genutzt werden kann, können Daten nur in 1:1 Beziehung über einen Socket ausgetauscht werden.