F5BigDnsView¶
The F5BigDnsView CRD defines a BIND DNS view on CNFs. Views let you return different DNS responses based on the source of a query. For example, you can serve private IP addresses to internal clients and public IP addresses to external clients, even for the same domain.
Each view includes a viewOrder field that controls the evaluation priority. BIND evaluates views in order from lowest to highest value and uses the first view that matches the query source. You assign zones to a view by setting the viewName field on the F5BigDnsLocalZone resource.
Parameters¶
The following tables describe the F5BigDnsView CR parameters.
metadata¶
| Parameter | Description |
|---|---|
name |
The name of the DNS view. |
namespace |
The Kubernetes namespace where the DNS view is installed. |
Spec¶
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
viewName |
string | Yes | — | The BIND view name. Must be unique across all F5BigDnsView resources in the cluster. |
viewOrder |
integer | No | 0 |
The view evaluation order. Lower values have higher priority. This value must be unique across views. |
options |
string[] | No | — | BIND view options in standard syntax (for example, "match-clients { 10.0.0.0/8; }"). |
Configure F5BigDnsView¶
Prerequisites¶
Make sure:
BIG-IP Next CNF 2.4 or later is installed and the F5 Ingress controller is running.
You have
kubectlaccess to the CNF cluster with permissions to create Custom Resources.
Apply DNS view¶
Copy the F5BigDnsView example CR below to a YAML file.
apiVersion: k8s.f5net.com/v1
kind: F5BigDnsView
metadata:
name: internal-view
namespace: default
spec:
viewName: internal
viewOrder: 10
options:
- "match-clients { 192.168.0.0/16; 10.0.0.0/8; }"
- "match-destinations { any; }"
- "recursion yes"
- "allow-recursion { any; }"
Apply the CR to your cluster:
kubectl apply -f internal-view.yaml