VNF не пересылает пакеты, отправленные от клиента в Openstack, с использованием VNFF Graph

Я пытаюсь пропинговать от клиента до 8.8.8.8 через VNF1, поэтому я использую VNFFG, чтобы заставить ICMP-трафик клиента проходить через VNF1 перед выходом в Интернет.

После того, как я применил правило VNFFG в openstack, VNF1 может видеть пакет MPLS, инкапсулированный из пакета ICMP клиента с помощью openstack, когда я использую tcpdump, но таблица пересылки VNF1 не получает никаких пакетов для продолжения пересылки этого пакета.

Этот пакет виден на VNF1:

      09:15:12.161830 MPLS (label 13311, exp 0, [S], ttl 255) IP 12.0.0.58 > 8.8.8.8: ICMP echo request, id 10531, seq 15, length 64

Я перехватываю этот пакет, вижу, что содержимое может быть прочитано (без шифрования), а src, dst MAC принадлежат Клиенту и VNF1 соответственно.

Это мой шаблон VNFFG:

      tosca_definitions_version: tosca_simple_profile_for_nfv_1_0_0
description: Sample VNFFG template
topology_template:
  node_templates:
    Forwarding_path1:
      type: tosca.nodes.nfv.FP.TackerV2
      description: demo chain
      properties:
        id: 51
        policy:
          type: ACL
          criteria:
            - name: block_icmp
              classifier:
                network_src_port_id: 0304e8b5-6c37-4634-bde2-1351cdee5134 #CLIENT PORT ID
                ip_proto: 1
            - name: block_udp
              classifier:
                network_src_port_id: 0304e8b5-6c37-4634-bde2-1351cdee5134 #CLIENT PORT ID
                ip_proto: 17
        path:
          - forwarder: VNF1
            capability: CP1
  groups:
    VNFFG1:
      type: tosca.groups.nfv.VNFFG
      description: Traffic to server
      properties:
        vendor: tacker
        version: 1.0
        number_of_endpoints: 1
        dependent_virtual_link: [VL1]
        connection_point: [CP1]
        constituent_vnfs: [VNF1]
      members: [Forwarding_path1]

Это мой дескриптор VNF:

      tosca_definitions_version: tosca_simple_profile_for_nfv_1_0_0
description: Demo example
metadata:
  template_name: sample-tosca-vnfd
topology_template:
  node_templates:
    VDU1:
      type: tosca.nodes.nfv.VDU.Tacker
      capabilities:
        nfv_compute:
          properties:
            num_cpus: 1
            mem_size: 2 GB
            disk_size: 20 GB
      properties:
        image: VNF1
        availability_zone: nova
        mgmt_driver: noop
        key_name: my-key-pair
        config: |
          param0: key1
          param1: key2

    CP1:
      type: tosca.nodes.nfv.CP.Tacker
      properties:
        management: true
        order: 0
        anti_spoofing_protection: false
      requirements:
        - virtualLink:
            node: VL1
        - virtualBinding:
            node: VDU1
    VL1:
      type: tosca.nodes.nfv.VL
      properties:
        network_name: my-private-network
        vendor: Tacker
    FIP1:
      type: tosca.nodes.network.FloatingIP
      properties:
        floating_network: public
      requirements:
        - link:
            node: CP1

Я использовал эту команду для развертывания правила VNFGG:

      tacker vnffg-create --vnffgd-template vnffg_test.yaml forward_traffic

Я не знаю, может ли проблема исходить из ключа, который я определил для VNF1, потому что я не знаю, для чего используются param0: key0 и param1: key1 и где они?

Как я могу решить, чтобы VNF пересылал эти пакеты.

0 ответов

Другие вопросы по тегам