go.ligato.io/vpp-agent/v3@v3.5.0/k8s/tests/topology-generate-fib.sh (about)

     1  #!/usr/bin/env bash
     2  
     3  VSWITCH_NAME="vpp1"
     4  ETCD_CONTAINER="etcd"
     5  
     6  
     7  
     8  
     9  docker exec -it ${ETCD_CONTAINER} etcdctl put /vnf-agent/${VSWITCH_NAME}/vpp/config/v1/interface/memif1 '
    10  {
    11    "name": "memif1",
    12    "type": 2,
    13    "enabled": true,
    14    "memif": {
    15      "master": true,
    16      "id": 1,
    17      "socket_filename": "/tmp/memif.sock"
    18    },
    19    "ip_addresses" : [
    20       "8.42.0.2/24"
    21    ]
    22  }
    23  '
    24  
    25  docker exec -it ${ETCD_CONTAINER} etcdctl put /vnf-agent/${VSWITCH_NAME}/vpp/config/v1/bd/B1 '
    26  {
    27    "name": "B1",
    28    "flood": true,
    29    "unknown_unicast_flood": true,
    30    "forward": true,
    31    "learn": true,
    32    "interfaces": [
    33      {
    34        "name": "memif1"
    35      }
    36    ]
    37  }
    38  '
    39  
    40  if [ $1 -eq 0 ] ; then
    41     exit
    42  fi
    43  
    44  for i in $(eval echo {1..$1});do
    45      a=$(($i / 16 / 16 / 16 % 16))
    46      b=$(($i / 16 / 16 % 16))
    47      c=$(($i / 16 % 16))
    48      d=$(($i % 16))
    49      hexchars="0123456789ABCDEF"
    50  
    51      w=${hexchars:$a:1}
    52      x=${hexchars:$b:1}
    53      y=${hexchars:$c:1}
    54      z=${hexchars:$d:1}
    55  
    56  
    57  docker exec -it ${ETCD_CONTAINER} etcdctl put /vnf-agent/${VSWITCH_NAME}/vpp/config/v1/bd/B1/fib/62:89:C6:A3:$w$x:$y$z "
    58  {
    59    \"phys_address\": \"62:89:C6:A3:$w$x:$y$z\",
    60    \"bridge_domain\": \"B1\",
    61    \"outgoing_interface\": \"memif1\",
    62    \"static_config\": true,
    63    \"bridged_virtual_interface\": false
    64  }
    65  
    66  "
    67  
    68  
    69  done
    70