Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # Create router
- ovn-nbctl lr-add router
- # Create switches
- for i in $(seq 1 159); do
- j=$(printf '%02x' $i)
- ovn-nbctl ls-add ls$i
- ovn-nbctl lsp-add ls$i lsp-ro$i
- ovn-nbctl lrp-add router ro-lsp$i 00:00:00:00:00:$j 10.0.0.$i/16
- ovn-nbctl set Logical_Switch_Port lsp-ro$i options:router-port=ro-lsp$i type=router addresses=router
- done
- for i in $(seq 1 92); do
- for j in $(seq 1 159); do
- k=$(printf '%02x' $i)
- l=$(printf '%02x' $j)
- create_addrset=$((($j - 1) % 2))
- addrset_index=$((($j - 1) / 2))
- echo "lsp-add ls$j lsp${j}_10.$i.0.$j"
- ovn-nbctl lsp-add ls$j lsp${j}_10.$i.0.$j
- echo "lsp-set-addresses lsp${j}_10.$i.0.$j \"00:00:00:00:$k:$l 10.$i.0.$j\""
- ovn-nbctl lsp-set-addresses lsp${j}_10.$i.0.$j "00:00:00:00:$k:$l 10.$i.0.$j"
- if [ $create_addrset -eq 0 ]; then
- echo "Create address set"
- echo "ovn-nbctl create Address_Set name=${i}_${addrset_index} addresses=10.$i.0.$j"
- ovn-nbctl create Address_Set name=${i}_${addrset_index} addresses=10.$i.0.$j
- else
- echo "ovn-nbctl add Address_Set ${i}_${addrset_index} addresses 10.$i.0.$j"
- ovn-nbctl add Address_Set ${i}_${addrset_index} addresses 10.$i.0.$j
- fi
- echo "Create in-pod acl allow"
- ovn-nbctl acl-add ls$j to-lport 1000 "outport == \"lsp${j}_10.$i.0.$j\" && ip4.src == \$${i}_${addrset_index}" allow
- echo "Create drop acl"
- ovn-nbctl acl-add ls$j to-lport 900 "outport == \"lsp${j}_10.$i.0.$j\"" drop
- done
- done
Add Comment
Please, Sign In to add comment