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
Search Ask AI
ScyllaDB Docs ScyllaDB Operator Reference IPv6 configuration reference

Caution

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

IPv6 configuration reference¶

This reference documents the IPv6-specific API fields, automatic ScyllaDB settings, validation rules, and version requirements for IPv6 networking.

For complete field definitions and schemas, see the ScyllaCluster API reference. For setup instructions, see IPv6 networking.

Network configuration fields¶

IPv6 networking is configured through the spec.network section of a ScyllaCluster.

spec.network.ipFamilyPolicy¶

Controls how Kubernetes assigns IP families to the Services created for ScyllaDB nodes. Defaults to SingleStack. Allowed values: SingleStack (single IP family only), PreferDualStack (both families if supported, falls back to single-stack), RequireDualStack (both families required, rejected if unsupported).

spec.network.ipFamilies¶

A list of IP families (IPv4, IPv6) that the ScyllaDB cluster uses. Defaults to [IPv4] when omitted. The first entry determines which protocol ScyllaDB uses for all internal communication (listen_address, rpc_address, broadcast addresses, seed resolution). The second entry (if present) is used only at the Kubernetes Service level for dual-stack accessibility.

spec.network.dnsPolicy¶

Sets the DNS resolution policy for ScyllaDB pods. Defaults to ClusterFirstWithHostNet. Accepts any Kubernetes DNSPolicy. For IPv6 configurations, set this to ClusterFirst to ensure proper AAAA record resolution.

Automatic ScyllaDB configuration¶

When spec.network.ipFamilies includes IPv6 as the first entry, the Operator automatically applies the following ScyllaDB arguments. You do not need to set these manually.

ScyllaDB argument

IPv4 value

IPv6 value

Purpose

--listen-address

0.0.0.0

::

Interface ScyllaDB listens on for inter-node communication

--rpc-address

not set (ScyllaDB defaults to 0.0.0.0)

::

Interface ScyllaDB listens on for CQL client connections

--enable-ipv6-dns-lookup

not set

1

Enables AAAA DNS record resolution in ScyllaDB

Broadcast addresses¶

Broadcast addresses (--broadcast-address and --broadcast-rpc-address) are configured through spec.exposeOptions.broadcastOptions, not by setting ScyllaDB arguments directly. The Operator ensures broadcast addresses match the selected IP family.

Validation rules¶

The Operator validates IPv6-related fields at admission time.

Consistency requirements¶

  • The first entry in spec.network.ipFamilies determines ScyllaDB’s protocol. All nodes in the cluster use the same protocol.

  • If --listen-address or --rpc-address are set manually via additionalScyllaDBArguments, they must be compatible with the selected IP family. Values containing : are treated as IPv6; 0.0.0.0, ::, and empty strings are treated as wildcards and are valid for either family.

Unsupported configurations¶

  • Different IP families across datacenters in a multi-datacenter deployment.

  • Changing the IP family of an existing cluster (requires cluster recreation).

Example configurations¶

IPv4 single-stack (default)¶

No network section is needed. IPv4 single-stack is the default behavior.

IPv4-first dual-stack¶

spec:
  network:
    ipFamilyPolicy: PreferDualStack
    ipFamilies:
      - IPv4
      - IPv6
    dnsPolicy: ClusterFirst

ScyllaDB uses IPv4 for internal communication. Services are accessible over both IPv4 and IPv6.

IPv6-first dual-stack¶

spec:
  network:
    ipFamilyPolicy: PreferDualStack
    ipFamilies:
      - IPv6
      - IPv4
    dnsPolicy: ClusterFirst

ScyllaDB uses IPv6 for internal communication. Services are accessible over both IPv6 and IPv4.

IPv6-only single-stack¶

Caution

IPv6-only single-stack is experimental and not recommended for production use. See GitHub issue #3211 for status.

spec:
  network:
    ipFamilyPolicy: SingleStack
    ipFamilies:
      - IPv6
    dnsPolicy: ClusterFirst

Complete example manifests are available in the repository:

  • examples/ipv6/scylla-cluster-dual-stack.yaml — production-ready dual-stack setup

  • examples/ipv6/scylla-cluster-minimal-dual-stack.yaml — minimal dual-stack example

  • examples/ipv6/scylla-cluster-ipv6.yaml — IPv6 single-stack setup

Version requirements¶

Minimum versions¶

  • ScyllaDB: 2024.1 or newer

  • ScyllaDB Operator: 1.20 or newer

Production readiness¶

Production-ready configurations¶

The following configurations are production-ready:

  • IPv4-only single-stack: Fully supported (default Kubernetes behavior)

  • IPv4-first dual-stack: Fully supported and recommended for IPv6 adoption

  • IPv6-first dual-stack: Fully supported

Experimental configurations¶

The following configurations are experimental and not recommended for production use:

  • IPv6-only single-stack: Currently under development

Note

Experimental status: IPv6-only configurations work but have not undergone the same level of testing and validation as dual-stack configurations. For production IPv6 deployments, use dual-stack configurations instead.

Track progress on productionizing IPv6-only: #3211

Related documentation¶

  • IPv6 networking concepts

  • Configure dual-stack networking

  • Get started with IPv6

Was this page helpful?

PREVIOUS
Feature gates
NEXT
Releases
  • Create an issue
  • Edit this page

On this page

  • IPv6 configuration reference
    • Network configuration fields
      • spec.network.ipFamilyPolicy
      • spec.network.ipFamilies
      • spec.network.dnsPolicy
    • Automatic ScyllaDB configuration
      • Broadcast addresses
    • Validation rules
      • Consistency requirements
      • Unsupported configurations
    • Example configurations
      • IPv4 single-stack (default)
      • IPv4-first dual-stack
      • IPv6-first dual-stack
      • IPv6-only single-stack
    • Version requirements
      • Minimum versions
    • Production readiness
      • Production-ready configurations
      • Experimental configurations
    • Related documentation
ScyllaDB Operator
Search Ask AI
  • master
    • master
    • v1.21
    • v1.20
    • v1.19
    • v1.18
  • Get Started
    • What Is ScyllaDB Operator?
    • ScyllaDB Concepts on Kubernetes
  • Install Operator
    • Provision infrastructure
      • Set up a GKE cluster for ScyllaDB
      • Set up an EKS cluster for ScyllaDB
      • Set up an OKE cluster for ScyllaDB
      • Set up an OpenShift cluster for ScyllaDB
    • Install with GitOps
    • Install with Helm
    • Install on OpenShift
  • Deploy ScyllaDB
    • Before you deploy
      • Set up dedicated node pools
      • Configure CPU pinning
      • Configure nodes
      • Configure ScyllaDB Operator
    • Deploy your first cluster
    • Reference deployments
      • Reference deployment: GKE
      • Reference deployment: EKS
      • Reference deployment: OKE
      • Reference deployment: OpenShift
    • Install ScyllaDB Manager
    • Set up networking
      • Configure external access
      • IPv6 networking
        • Getting started with IPv6 networking
        • Configure dual-stack networking
        • Configure IPv6-only networking
        • Migrate clusters to IPv6
        • Troubleshoot IPv6 networking issues
        • IPv6 networking concepts
    • Set up monitoring
      • Set up ScyllaDB Monitoring
      • Set up ScyllaDB Monitoring on OpenShift
      • Expose Grafana
    • Production checklist
  • Connect Your App
    • Connect via CQL
    • Alternator (DynamoDB API)
    • Discovery endpoint
  • Understand
    • Storage
    • Tuning
    • ScyllaDB Manager
    • Networking
    • ScyllaDB Monitoring overview
    • Bootstrap synchronisation
    • Automatic data cleanup
    • Sidecar and pod anatomy
    • Ignition
    • Pod disruption budgets
    • Security
    • StatefulSets and racks
  • Operate
    • Scale, add, remove racks
    • Replace nodes
    • Expand storage volumes
    • Use maintenance mode
    • Back up and restore
    • Restore from backup
    • Perform a rolling restart
    • Migrate a rack to a new node pool
    • Pass additional ScyllaDB arguments
    • Configure precomputed IO properties
  • Upgrade
    • Upgrading ScyllaDB Operator
    • Upgrading ScyllaDB clusters
  • Troubleshoot
    • Investigate pod restarts
    • Change log level on a live cluster
    • Recover from a failed node replace
    • Troubleshoot performance
    • Collect debugging information
      • Collect data with must-gather
      • must-gather contents
      • Query system tables for debugging
    • Collect core dumps
  • 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
    • IPv6 configuration reference
    • Releases
    • Known issues
    • Conditions reference
    • nodetool alternatives
  • Contributing to ScyllaDB Operator
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 22 May 2026.
Powered by Sphinx 9.1.0 & ScyllaDB Theme 1.9.2