PCP (Port Control Protocol)
Port Control Protocol (PCP), defined in RFC 6887, lets a device on a private network explicitly ask a NAT gateway or firewall to create an inbound port mapping, the same goal UPnP's Internet Gateway Device protocol serves, but designed to also work across a carrier's NAT, not just a single home router. A PCP request can travel through more than one layer of address translation -- relevant on networks using CGNAT or DS-Lite, where a device's traffic crosses NAT at both the home router and the ISP -- and the client receives back the actual external address and port it was granted, rather than having to guess or rely on a separate discovery step. PCP also supports explicitly requesting an IPv6 mapping and lets a device proactively tear down a mapping it no longer needs, instead of leaving an open port behind until a lease silently expires. Support depends on both the local gateway and, for the carrier-NAT case, the ISP's own equipment implementing PCP; a device or network that doesn't support it falls back to manual port forwarding or UPnP where available.
By AdminKit team, Netbase JSC · Updated