<a id="co-networking-plan"></a>

# Plan Networking

Plan networking for Confluent Platform components before you deploy with Confluent for Kubernetes.

You and your client applications can access Confluent Platform components from:

* Inside the Kubernetes network
* Outside of the Kubernetes network

The following are the options to externally expose Confluent Platform:

- Load balancers
  - For Apache Kafka®, a Layer 4 load balancer that supports TLS pass-through is
    required.
  - For other Confluent components with HTTP endpoints, a Layer 4/7 load
    balancer is required.
- Kubernetes node ports
- Static external access with host-based or port-based routing
- OpenShift routes

## Default ports in Confluent for Kubernetes

CFK uses the following default ports for Confluent Platform components. You can override the
default ports in the component custom resources.

* 7203: JMX port
* 7777: Jolokia port
* 7778: Prometheus port
* 8081: Schema Registry default port
* 9081: Schema Registry internal listener port
* 8082: Confluent REST Proxy port
* 8083: Connect port
* 8088: ksqlDB default port
* 9088: ksqlDB internal listener port
* 8090: Metadata Service (MDS) default port
* 9090: Metadata Service (MDS) internal listener port
* 9021: Control Center port
* 9071: Kafka internal port
* 9072: Replication port
* 9073: Token port
* 9092: Kafka external port

## Internet Protocol versions

You can use CFK to deploy Confluent Platform on Kubernetes clusters on the following Internet
Protocol (IP) versions:

* IPv4
* IPv6
* Dual stack with both IPv4 and IPv6

IP versions have the following requirements:

* AWS supports IPv6-only clusters and does not support dual-stack clusters.
* Google Cloud supports dual-stack clusters and does not support IPv6-only
  clusters.
* You must configure your load balancers and identity providers to support the
  network protocol that you configure your cluster with.
* IPv6-only or dual-stack clusters can be enabled only on clusters using Java 11
  or later.
* IPv6-only or dual-stack clusters can be enabled only on clusters using KRaft.
