X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=vnfs%2FvCPE%2Fscripts%2Fv_brgemu_install.sh;h=f8824f974ba25e28e5cdc177cb7b66e9d52b6769;hb=67a7d781637122641820a1447c6964e454459f6d;hp=a0a16c765935993a4c206a1aa6480b716076b934;hpb=e9a312fc7323cfd720f9fb50826473b7d2525ae6;p=demo.git diff --git a/vnfs/vCPE/scripts/v_brgemu_install.sh b/vnfs/vCPE/scripts/v_brgemu_install.sh index a0a16c76..f8824f97 100755 --- a/vnfs/vCPE/scripts/v_brgemu_install.sh +++ b/vnfs/vCPE/scripts/v_brgemu_install.sh @@ -188,7 +188,8 @@ EOF #Get list of network device PCI bus addresses get_nic_pci_list() { while read -r line ; do - if [ "$line" != "${line#*network device}" ]; then + if [ "$line" != "${line#*network device}" ]; + then echo -n "${line%% *} " fi done < <(lspci) @@ -196,7 +197,6 @@ EOF NICS=$(get_nic_pci_list) NICS=`echo ${NICS} | sed 's/[0]\+\([0-9]\)/\1/g' | sed 's/[.:]/\//g'` - echo $NICS BRG_BNG_NIC=GigabitEthernet`echo ${NICS} | cut -d " " -f 2` # second interface in list echo $BRG_BNG_NIC > /opt/config/brg_nic.txt @@ -205,12 +205,6 @@ EOF cat > /etc/vpp/setup.gate << EOF set int state ${BRG_BNG_NIC} up set dhcp client intfc ${BRG_BNG_NIC} hostname brg-emulator - -tap connect lstack -set int state tap-0 up - -set interface l2 bridge tap-0 10 0 -set bridge-domain arp term 10 EOF echo "sdnc_ip: $(cat /opt/config/sdnc_ip.txt)" > /opt/config/ip.txt @@ -233,34 +227,34 @@ done BRG_BNG_NIC=$(cat /opt/config/brg_nic.txt) sdnc_ip=$(cat /opt/config/sdnc_ip.txt) -vppctl tap connect tap0 +lstack_tap=$(vppctl tap connect lstack) +vppctl set int state $lstack_tap up + +vppctl set interface l2 bridge $lstack_tap 10 0 +vppctl set bridge-domain arp term 10 + +tap0_tap=$(vppctl tap connect tap0) sleep 3 -vppctl set int state tap-1 up -vppctl set int ip addr tap-1 20.0.0.40/24 +vppctl set int state $tap0_tap up +vppctl set int ip addr $tap0_tap 20.0.0.40/24 ifconfig tap0 192.168.4.20/24 route add -host $sdnc_ip tap0 route add -host 20.0.0.40 tap0 -vppctl ip route add 192.168.4.0/24 via tap-1 -vppctl set interface snat in tap-1 out ${BRG_BNG_NIC} +vppctl ip route add 192.168.4.0/24 via $tap0_tap +vppctl set interface snat in $tap0_tap out ${BRG_BNG_NIC} vppctl snat add interface address ${BRG_BNG_NIC} -#Get vBNG ip addr -output=$(vppctl show dhcp client) -vbng_ip=${output##*gw } - -vppctl ip route add $vbng_ip/32 via $vbng_ip ${BRG_BNG_NIC} -vppctl ip route add $sdnc_ip/32 via $vbng_ip ${BRG_BNG_NIC} - -#Get HW addr of tap-1 +#Get HW addr of $tap0_tap while read -r hw do - if [[ "$hw" = tap-1* ]]; + if [[ "$hw" = $tap0_tap* ]]; then read -r hw hw_addr=${hw##* } break fi done < <(vppctl show hardware) + arp -s $sdnc_ip $hw_addr arp -s 20.0.0.40 $hw_addr @@ -270,7 +264,7 @@ var=${var##*HWaddr} var=${var%inet*} tap0_addr=${var%inet*} -vppctl set ip arp tap-1 192.168.4.20 $tap0_addr +vppctl set ip arp $tap0_tap 192.168.4.20 $tap0_addr EOF chmod +x /opt/bind_nic.sh @@ -335,6 +329,17 @@ EOF chmod +x /opt/set_nat.sh fi # endif BUILD_STATE != "build" +#Create script to run bind_nic.sh and set_nat.sh + cat > /opt/nat_service.sh << 'EOF' +#! /bin/bash + +sleep 15 +/opt/bind_nic.sh +/opt/set_nat.sh + +EOF + chmod +x /opt/nat_service.sh + if [[ $BUILD_STATE != "done" ]] then @@ -489,6 +494,24 @@ WantedBy=multi-user.target EOF systemctl enable /etc/systemd/system/honeycomb.service + + # Create systemctl service for nat script + cat > /etc/systemd/system/nat.service << EOF +[Unit] +Description=Runs vbrg scripts for nat configuration +Requires=vpp.service +After=vpp.service + +[Service] +RemainAfterExit=True +ExecStart=/opt/nat_service.sh +Restart=always + +[Install] +WantedBy=multi-user.target +EOF + systemctl enable /etc/systemd/system/nat.service + # Download DHCP config files cd /opt wget $REPO_URL_BLOB/org.onap.demo/vnfs/vcpe/$INSTALL_SCRIPT_VERSION/v_brgemu_init.sh