ScyllaDB University Live | Free Virtual Training Event
Learn more
ScyllaDB Documentation Logo Documentation
  • Deployments
    • Cloud
    • Server
  • Tools
    • ScyllaDB Manager
    • ScyllaDB Monitoring Stack
    • ScyllaDB Operator
  • Drivers
    • CQL Drivers
    • DynamoDB Drivers
    • Supported Driver Versions
  • Resources
    • ScyllaDB University
    • Community Forum
    • Tutorials
Install
Ask AI
ScyllaDB Docs ScyllaDB Operator Management Networking IPv6 networking Configure dual-stack networking with IPv6

Caution

You're viewing documentation for an unstable version of ScyllaDB Operator. Switch to the latest stable version.

Configure dual-stack networking with IPv6¶

What you’ll achieve: Deploy a ScyllaDB cluster that uses IPv6 for ScyllaDB communication and provides services accessible via both IPv6 and IPv4.

Before you begin:

  • You have a Kubernetes cluster with dual-stack networking enabled

  • You have ScyllaDB Operator installed

  • You have kubectl configured

After completion: Your ScyllaDB cluster will use IPv6 for inter-node communication while services are accessible via both IPv6 and IPv4.

Note

This configuration is production-ready. For IPv4-first dual-stack, see Configure dual-stack with IPv4.

Step 1: Create the configuration¶

Create a file scylla-ipv6-first.yaml:

apiVersion: scylla.scylladb.com/v1
kind: ScyllaCluster
metadata:
  name: scylla-ipv6-first
  namespace: scylla
spec:
  version: 6.2.2
  agentVersion: 3.3.3
  datacenter:
    name: datacenter1
    racks:
      - name: rack1
        members: 3
        storage:
          capacity: 100Gi
          storageClassName: scylladb-local-xfs
        resources:
          limits:
            cpu: 4
            memory: 16Gi
          requests:
            cpu: 4
            memory: 16Gi
  
  network:
    ipFamilyPolicy: PreferDualStack
    ipFamilies:
      - IPv6  # ScyllaDB uses IPv6
      - IPv4  # Services also support IPv4
    dnsPolicy: ClusterFirst
  
  exposeOptions:
    nodeService:
      type: Headless
    broadcastOptions:
      nodes:
        type: PodIP
        podIP:
          source: Status
      clients:
        type: ServiceClusterIP

Step 2: Apply the configuration¶

kubectl create namespace scylla
kubectl apply -f scylla-ipv6-first.yaml

Step 3: Wait for the cluster to be ready¶

Monitor pod creation:

kubectl get pods -n scylla -l scylla-operator.scylladb.com/pod-type=scylladb-node -w

Wait until all pods show Running status.

Step 4: Verify dual-stack configuration¶

Check that services have both IP families:

kubectl get svc -n scylla -o custom-columns=NAME:.metadata.name,IP-FAMILIES:.spec.ipFamilies,POLICY:.spec.ipFamilyPolicy

Expected output shows [IPv6 IPv4] for IP families:

NAME                              IP-FAMILIES        POLICY
scylla-ipv6-first-client          [IPv6 IPv4]        PreferDualStack
scylla-ipv6-first-datacenter1-... [IPv6 IPv4]        PreferDualStack

Step 5: Verify cluster uses IPv6¶

Check that ScyllaDB is using IPv6 addresses:

NAMESPACE=scylla
CLUSTER_NAME=scylla-ipv6-first

pods=$(kubectl -n "${NAMESPACE}" get pods -l scylla/cluster="${CLUSTER_NAME}" -l scylla-operator.scylladb.com/pod-type=scylladb-node -o name)

for pod in ${pods}; do
  kubectl -n "${NAMESPACE}" exec "${pod}" -c scylla -- nodetool status
done

Expected output shows IPv6 addresses (with colons):

Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address              Load      Tokens  Owns  Host ID                              Rack
UN  fd00:10:244:1::7f    501.79 KB 256     ?     4583fff5-2aa6-4041-9be8-c74bcabaff8c rack1
UN  fd00:10:244:2::6d    494.49 KB 256     ?     b1f889b4-80e7-4685-a3c5-1b81797c2ce4 rack1
UN  fd00:10:244:3::6c    494.96 KB 256     ?     7a4bb6da-415e-4fc3-a6ca-0369c0e76bf0 rack1

Next steps¶

  • Migrate existing clusters to IPv6

  • Troubleshoot IPv6 issues

Was this page helpful?

PREVIOUS
Configure dual-stack networking with IPv4
NEXT
Configure IPv6-only networking
  • Create an issue
  • Edit this page

On this page

  • Configure dual-stack networking with IPv6
    • Step 1: Create the configuration
    • Step 2: Apply the configuration
    • Step 3: Wait for the cluster to be ready
    • Step 4: Verify dual-stack configuration
    • Step 5: Verify cluster uses IPv6
    • Next steps
ScyllaDB Operator
  • v1.20
    • v1.20
    • v1.19
    • v1.18
    • v1.17
    • master
  • Architecture
    • Overview
    • Storage
      • Overview
      • Local CSI Driver
    • Tuning
    • ScyllaDB Manager
  • Installation
    • Overview
    • Kubernetes prerequisites
    • GitOps (kubectl)
    • Helm
  • Management
    • Configuring kernel parameters (sysctls)
    • Synchronising bootstrap operations in ScyllaDB clusters
    • Automatic data cleanup
    • Upgrading
      • Upgrading ScyllaDB Operator
      • Upgrading ScyllaDB clusters
    • Monitoring
      • ScyllaDB Monitoring overview
      • Setting up ScyllaDB Monitoring
      • Exposing Grafana
      • Setting up ScyllaDB Monitoring on OpenShift
    • Networking
      • IPv6 networking
        • Getting started with IPv6 networking
        • Configure dual-stack networking with IPv4
        • Configure dual-stack networking with IPv6
        • Configure IPv6-only networking
        • Migrate clusters to IPv6
        • Troubleshoot IPv6 networking issues
        • IPv6 configuration reference
        • IPv6 networking concepts
  • Resources
    • Overview
    • ScyllaClusters
      • ScyllaClusters
      • ScyllaDB clients
        • Discovering ScyllaDB Nodes
        • Using CQL
        • Using Alternator (DynamoDB)
      • Node operations using Scylla Operator
        • Upgrading version of ScyllaDB
        • Replacing a ScyllaDB node
        • Automatic cleanup and replacement in case when k8s node is lost
        • Maintenance mode
        • Restore from backup
        • Resizing storage in ScyllaCluster
      • Deploying multi-datacenter ScyllaDB clusters in Kubernetes
        • Build multiple Amazon EKS clusters with inter-Kubernetes networking
        • Build multiple GKE clusters with inter-Kubernetes networking
        • Deploy a multi-datacenter ScyllaDB cluster in multiple interconnected Kubernetes clusters
      • Exposing ScyllaDB cluster
    • ScyllaDBClusters
      • ScyllaDBClusters
      • Exposing ScyllaDB cluster
    • NodeConfigs
    • ScyllaOperatorConfigs
    • RemoteKubernetesCluster
  • Quickstarts
    • Deploying ScyllaDB on GKE
    • Deploying ScyllaDB on EKS
  • Support
    • Support overview
    • Known issues
    • Troubleshooting
      • Troubleshooting installation issues
    • Gathering data with must-gather
    • Releases
  • Reference
    • API Reference
      • scylla.scylladb.com
        • NodeConfig (scylla.scylladb.com/v1alpha1)
        • RemoteKubernetesCluster (scylla.scylladb.com/v1alpha1)
        • RemoteOwner (scylla.scylladb.com/v1alpha1)
        • ScyllaCluster (scylla.scylladb.com/v1)
        • ScyllaDBCluster (scylla.scylladb.com/v1alpha1)
        • ScyllaDBDatacenterNodesStatusReport (scylla.scylladb.com/v1alpha1)
        • ScyllaDBDatacenter (scylla.scylladb.com/v1alpha1)
        • ScyllaDBManagerClusterRegistration (scylla.scylladb.com/v1alpha1)
        • ScyllaDBManagerTask (scylla.scylladb.com/v1alpha1)
        • ScyllaDBMonitoring (scylla.scylladb.com/v1alpha1)
        • ScyllaOperatorConfig (scylla.scylladb.com/v1alpha1)
    • Feature Gates
Docs Tutorials University Contact Us About Us
© 2026, ScyllaDB. All rights reserved. | Terms of Service | Privacy Policy | ScyllaDB, and ScyllaDB Cloud, are registered trademarks of ScyllaDB, Inc.
Last updated on 11 February 2026.
Powered by Sphinx 8.2.3 & ScyllaDB Theme 1.8.10
Ask AI