Skip to content

Unable to use REST plugin to configure vpp loopback interface #1906

@WentianBu

Description

@WentianBu

I am trying to make some initial configuration through RESTful plugin. My vpp version is 22.10 and it has 2 DPDK interfaces TGE1 and TGE2. I'm using the linux-cp plugin of VPP. I hope to create a loopback interface, but the ligato seems not support linux-cp plugin configuration, so I write the lcp create command in the bootstrap.vpp file, and in my vpp.conf, I use exec bootstrap.vpp to execute the commands when vpp starting.

My bootstrap.vpp is:

create loopback interface
lcp create loop0 host-if loop0
lcp create TGE1 host-if eth1
lcp create TGE2 host-if eth2

Then I write a init.yaml and PUT it to the ligato RESTful plugin to configure the IP addresses and the states of the interfaces.

vppConfig:
  interfaces:
  - name: "loop0"
    type: SOFTWARE_LOOPBACK
    enabled: true
    ipAddresses:
    - 10.200.0.1/24
    - fec0:2020::1/64
  - name: "TGE1"
    type: DPDK
    enabled: true
    ipAddresses:
    - 10.200.20.10/24
    - fec0:2023::1/96
  - name: "TGE2"
    type: DPDK
    enabled: true
    ipAddresses:
    - 10.200.30.10/24
    - fec0:2024::2/96

However, I found that the ip addresses of TGE1 and TGE2 were configured correctly, but loop0 wasn't configured. Actually, when I use vppctl show int addr, I found a new loopback loop1 was created and configured with the ip addresses of loop0. The loop0 and the host-interface loop0 created by linux-cp stayed down and unconfigured.
I tried to solve the problem. I dumped the interfaces with the RESTful api, and found that the name of loop0 is actually UNTAGGED-loop0. I modified the YAML configuration above but it didn't work. The behavior was almost same: a new loopback interface was created and configured, but the original loop0 wasn't.

Is this a BUG of ligato or my YAML configuration is wrong? How can I configure a existed loopback interface rather than create a new one?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions