Skip to content

Glossary

backlog — The operating system's waiting room for connections a listening program hasn't accepted yet. The handshake completes into the backlog, which is why a caller can "connect" — and even exit 0 — without the program ever knowing (chapter 4).

banner — The greeting some services send the moment a connection opens: a line of text naming (or claiming) the service. Reading it costs no protocol knowledge and proves something is listening (chapter 2).

datagram — One UDP packet, addressed and sent on its own: no connection, no handshake, no goodbye. A letter, not a phone call (chapter 8).

exit code — The number a program leaves behind for whoever ran it ($? in shell). Netcat's contract: 0 when the socket did its job, 1 when the connection failed — with two honest traps (backlog delivery, UDP to nobody) where 0 doesn't mean anyone heard you (chapters 4, 7, 8).

FIN — TCP's polite goodbye: the signal that a side has finished sending. Netcat's -N sends it when your input ends (chapter 9).

handshake (TCP) — The three-step opening of every TCP connection: SYN, SYN-ACK, ACK. Until it completes there is no connection — only, at most, a backlog entry (chapter 4).

ICMP port unreachable — The machine's own "nobody here" reply to a UDP packet. Loopback delivers it honestly; networks often filter it, which is why UDP checks shrug (chapter 8).

listener — A program that has claimed a port and waits for connections on it. nc -l is one; every real server contains one (chapter 4).

loopback — The address range (127.0.0.1 and friends) that means "this machine." Traffic to it never leaves the box, which is why the whole lab lives there (chapter 1).

port — A number, 1–65535, naming which program on a machine a socket is for. Claimed by listening; answered for by whoever listens (chapter 1).

socket — An endpoint for a network conversation, handed to a program the way an open file is: you read from it and write to it. An address plus a port names one (chapter 1).

stderr / stdin / stdout — A program's three standard streams: input, output, and the side channel for its own voice. Netcat sends data to stdout and puts its reports (Connection to... succeeded!) on stderr, which is why -v never pollutes a transfer (chapter 2).

Unix-domain socket — A socket whose address is a file path instead of a port, for programs on one machine. Guarded by file permissions; its socket file outlives its listener (chapter 10).

zero I/O (-z) — Netcat's check mode: connect, report, hang up, send nothing. The one-port question, answered by the exit code (chapter 5).