diff options
Diffstat (limited to 'vnfs/vFW/scripts/v_sink_init.sh')
-rw-r--r-- | vnfs/vFW/scripts/v_sink_init.sh | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/vnfs/vFW/scripts/v_sink_init.sh b/vnfs/vFW/scripts/v_sink_init.sh index 77f4296c..7975d435 100644 --- a/vnfs/vFW/scripts/v_sink_init.sh +++ b/vnfs/vFW/scripts/v_sink_init.sh @@ -1,7 +1,17 @@ #!/bin/bash +# Convert Network CIDR to Netmask +cdr2mask () { + # Number of args to shift, 255..255, first non-255 byte, zeroes + set -- $(( 5 - ($1 / 8) )) 255 255 255 255 $(( (255 << (8 - ($1 % 8))) & 255 )) 0 0 0 + [ $1 -gt 1 ] && shift $1 || shift + echo ${1-0}.${2-0}.${3-0}.${4-0} +} + # Set the IP address of the protected network interface of the vFirewall as a default gateway to the unprotected network PROTECTED_NET_GW=$(cat /opt/config/protected_net_gw.txt) UNPROTECTED_NET=$(cat /opt/config/unprotected_net.txt | cut -d'/' -f1) +BITS=$(cat /opt/config/unprotected_net.txt | cut -d"/" -f2) +NETMASK=$(cdr2mask $BITS) -route add -net $UNPROTECTED_NET netmask 255.255.255.0 gw $PROTECTED_NET_GW +route add -net $UNPROTECTED_NET netmask $NETMASK gw $PROTECTED_NET_GW |