Tüm Ürünler
Search
Belge Merkezi

Alibaba Cloud Service Mesh:IPv6 ağ geçidi oluşturma

Son Güncelleme:Oct 07, 2026

IPv6, IPv4'e kıyasla daha geniş bir adres alanı ve gelişmiş güvenlik sunar. Bu konuda, bir ASM ağ geçidini IPv6 adresiyle nasıl oluşturacağınız ve mevcut bir ağ geçidine IPv6 adresini nasıl ekleyeceğiniz açıklanmaktadır.

Önkoşullar

Küme, ASM örneğine eklenmiştir. Daha fazla bilgi için bkz. Bir kümeyi ASM örneğine ekleme.

Yöntem 1: IPv6 destekli bir ASM ağ geçidi oluşturma

Bir ASM ağ geçidi oluştururken, ona bir IPv6 adresi atamak için service.beta.kubernetes.io/alibaba-cloud-loadbalancer-ip-version: "ipv6" ek açıklamasını (annotation) ekleyin.

  1. ASM konsolu üzerinde oturum açın. Sol gezinme bölmesinde Service Mesh > Mesh Management seçeneğini belirleyin.

  2. Mesh Management sayfasında ASM örneğinin adını tıklayın. Sol gezinme bölmesinde ASM Gateways > Ingress Gateway seçeneğini belirleyin.

  3. Ingress Gateway sayfasında Create from YAML öğesini tıklayın.

  4. Create sayfasında Namespaces değerini istio-system olarak ayarlayın, düzenleyiciye aşağıdaki içeriği girin ve ardından Create öğesini tıklayın.

    clusterIds alanını veri düzlemi kümenizin kimliği (ID) ile doldurun.

    Örnek YAML

    apiVersion: istio.alibabacloud.com/v1beta1
    kind: IstioGateway
    metadata:
      name: ingressgateway
      namespace: istio-system
    spec:
      gatewayType: ingress
      clusterIds:
        - c808cdd6abd854d5ba6764da5ca2e****          # Replace this with the ID of your data plane cluster.
      ports:
        - name: http-0
          port: 80
          targetPort: 80
          protocol: HTTP
        - name: https-1
          port: 443
          targetPort: 443
          protocol: HTTPS
      serviceAnnotations:
        service.beta.kubernetes.io/alicloud-loadbalancer-address-type: internet
        service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec: slb.s1.small
        service.beta.kubernetes.io/alibaba-cloud-loadbalancer-ip-version: "ipv6"
      replicaCount: 1
      resources:
        limits:
          cpu: '2'
          memory: 4G
        requests:
          cpu: 200m
          memory: 256Mi
      serviceType: LoadBalancer
      autoCreateGatewayYaml: true                      

    Parametre

    Açıklama

    service.beta.kubernetes.io/alicloud-loadbalancer-address-type

    CLB örneğinin ağ türü. Geçerli değerler şunlardır:

    • internet: Genel ağ.

    • intranet: Özel ağ.

    service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec

    CLB örneğinin teknik özellikleri. Geçerli değerler:slb.s1.small, slb.s2.small, slb.s2.medium, slb.s3.small, slb.s3.medium ve slb.s3.large.

    service.beta.kubernetes.io/alibaba-cloud-loadbalancer-ip-version

    CLB örneğine bir IPv6 adresi atamak için değeri "ipv6" olarak ayarlayın.

    Ağ geçidi oluşturulduktan sonra, Ingress Gateway sayfasında ağ geçidinin Service address değeri olarak bir IPv6 adresi görüntülenir.

Yöntem 2: Mevcut bir ASM ağ geçidine IPv6 ekleme

IPv4 adresi kullanan bir ASM ağ geçidiniz varsa, ek bir CLB örneği oluşturarak IPv6 desteği ekleyebilirsiniz. Bu yapılandırma, ağ geçidinin hem IPv4 hem de IPv6 adreslerini kullanmasını sağlar.

  1. ACK konsolu üzerinde oturum açın. Sol gezinme bölmesinde Clusters öğesini tıklayın.

  2. Clusters sayfasında kümenizin adını tıklayın. Sol gezinme bölmesinde Network > Services seçeneğini belirleyin.

  3. Services sayfasının üst kısmında Namespace değerini istio-system olarak ayarlayın ve ardından sağ üst köşede bulunan Create Resources in YAML öğesini tıklayın.

  4. Create sayfasında Sample Template değerini Custom olarak seçin, aşağıdaki içeriği Template düzenleyicisine kopyalayın ve ardından Create öğesini tıklayın.

    Önemli

    nodePort değeri, mevcut herhangi bir bağlantı noktası numarasıyla çakışmamalıdır.

    Örnek YAML

    apiVersion: v1
    kind: Service
    metadata:
      annotations:
        service.beta.kubernetes.io/alicloud-loadbalancer-address-type: internet
        service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec: slb.s1.small
        service.beta.kubernetes.io/alibaba-cloud-loadbalancer-ip-version: "ipv6"
      labels:
        app: istio-ingressgateway
        asm-system: 'true'
        istio: ingressgateway
      name: istio-ingressgateway-2
      namespace: istio-system
    spec:
      externalTrafficPolicy: Cluster
      ports:
        - name: http-0
          nodePort: 30544
          port: 80
          protocol: TCP
          targetPort: 80
        - name: https-2
          nodePort: 30682
          port: 443
          protocol: TCP
          targetPort: 443
      selector:
        app: istio-ingressgateway
        asm-system: 'true'
        istio: ingressgateway
        provider: asm
      sessionAffinity: None
      type: LoadBalancer
                            

    Parametre

    Açıklama

    service.beta.kubernetes.io/alicloud-loadbalancer-address-type

    CLB örneğinin ağ türü. Geçerli değerler şunlardır:

    • internet: Genel ağ.

    • intranet: Özel ağ.

    service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec

    CLB örneğinin teknik özellikleri. Geçerli değerler:slb.s1.small, slb.s2.small, slb.s2.medium, slb.s3.small, slb.s3.medium ve slb.s3.large.

    service.beta.kubernetes.io/alibaba-cloud-loadbalancer-ip-version

    CLB örneğine bir IPv6 adresi atamak için değeri "ipv6" olarak ayarlayın.

    Hizmet oluşturulduktan sonra, Services sayfasındaki External IP sütununda istio-ingressgateway ve istio-ingressgateway-2 için IPv4 ve IPv6 adresleri listelenir. Bu adresler, ASM ağ geçidi için IPv4 ve IPv6 giriş noktaları olarak hizmet verir.

SSS

Orijinal istemci IPv6 adresini alma

  1. IPv6 adresiyle ilişkili CLB örneğini yapılandırın. 80 ve 443 numaralı bağlantı noktaları için dinleyici yapılandırmalarını değiştirin. Advanced Settings bölümünde Proxy Protocol özelliğini etkinleştirin. Daha fazla bilgi için bkz. CLB örneğinin Katman 4 dinleyicisini kullanarak istemcinin gerçek IP adresini alma.

  2. Bir EnvoyFilter Şablonu oluşturun.

    1. ASM konsolu üzerinde oturum açın. Sol gezinme bölmesinde Service Mesh > Mesh Management seçeneğini belirleyin.

    2. Mesh Management sayfasında ASM örneğinin adını tıklayın. Sol gezinme bölmesinde Plugin Extension Center > EnvoyFilter Template seçeneğini belirleyin. Açılan sayfada Create EnvoyFilter Template öğesini tıklayın.

    3. Create sayfasında bir şablon adı girin, Add an EnvoyFilter template for specific adapted istio version. öğesini tıklayın, bir Adapted istio version seçin, aşağıdaki YAML yapılandırmasını girin ve ardından Create öğesini tıklayın.

      apiVersion: networking.istio.io/v1alpha3
      kind: EnvoyFilter
      metadata:
        name: proxy-protocol
        namespace: istio-system
      spec:
        configPatches:
        - applyTo: LISTENER
          patch:
            operation: MERGE
            value:
              listener_filters:
              - name: envoy.listener.proxy_protocol
              - name: envoy.listener.tls_inspector
        workloadSelector:
          labels:
            istio: ingressgateway
  3. Proxy Protocol desteğini etkinleştirmek için EnvoyFilter Şablonunu ASM ağ geçidine uygulayın.

    1. EnvoyFilter Template sayfasında hedef şablonu bulun ve Actions sütunundaki Edit template seçeneğini tıklayın.

    2. Edit EnvoyFilter Template sayfasında Bind template to workloads sekmesini tıklayın ve ardından Bind EnvoyFilter to Workloads öğesini seçin.

    3. Bind EnvoyFilter to Workloads iletişim kutusunda Namespaces değerini istio-system ve Workload Type değerini Deployment olarak ayarlayın. Not bound bölümünde hedef ağ geçidinin yanındaki Bind seçeneğini tıklayın ve ardından OK öğesini seçin.

  4. Ağ geçidinin IPv6 URL'sine bir IPv6 ağı üzerinden erişin ve ilgili ağ geçidi günlüklerini görüntüleyin.

    Aşağıdaki örnek ağ geçidi günlüğünde, downstream_remote_address alanının değeri istemcinin orijinal IPv6 adresidir.

    {"upstream_cluster":null,"bytes_received":0,"downstream_local_address":"[2400:XXXX:1300::12d1]:80","upstream_service_time":null,"FILTER_CHAIN_NAME":null,"path":"/","x_forwarded_for":"2402:XXXX:1800:af00:0:9671:f00f:314b","upstream_host":null,"bytes_sent":0,"requested_server_name":null,"route_name":null,"response_flags":"NR","start_time":"2022-12-28T06:41:57.796Z","upstream_transport_failure_reason":null,"protocol":"HTTP/1.1","authority":"[2400:XXXX:1300::12d1]","LOCAL_REPLY_BODY":"","duration":0,"method":"GET","downstream_remote_address":"[2402:XXXX:1800:af00:0:9671:f00f:314b]:58272","request_id":"fee2b69a-b755-986b-91e4-5d228c81****","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36","trace_id":null,"authority_for":"[2400:XXXX:1300::12d1]","upstream_local_address":null,"istio_policy_status":null,"response_code":404}