PCP (Port Control Protocol, RFC 6887) ist ein Netzwerkprotokoll, mit dem ein Host in einem lokalen Netz die Port-Weiterleitung und Filterregeln eines vorgelagerten Routers steuern kann. Es ist der Nachfolger von NAT-PMP (RFC 6886) und verwendet dessen Paketformat sowie denselben UDP-Port 5351.
Aufgaben von PCP
- Port-Mappings anlegen, ändern und löschen (NAT44 und NAT64).
- Firewall-Regeln für eingehende Verbindungen freigeben — auch bei reinem IPv6 ohne NAT.
- Mappings im Auftrag Dritter (Third-Party-Mappings).
- Port-Ranges statt einzelner Ports.
- Optimierte Keepalive-Nachrichten, die weniger Datenverkehr verursachen als NAT-PMP.
PCP läuft als Client-Server-Protokoll über UDP (Port 5351). Der Client sendet eine Anfrage an das Gateway, das Gateway bestätigt die Mapping-Änderung in der Antwort. Damit lassen sich Dienste hinter einem NAT automatisch erreichbar machen, ohne dass ein Administrator manuell Ports freigibt.
PCP und NAT-Traversal
Klassische NAT-Traversal-Techniken wie Hole Punching umgehen NAT-Probleme ohne Gateway-Mitwirkung. PCP geht den umgekehrten Weg: Es fragt das Gateway direkt. Moderne Tunnel-Protokolle wie MASQUE laufen über Port 443 und benötigen deshalb oft gar keine Port-Weiterleitung mehr.