Not a member of Pastebin yet?
                        Sign Up,
                        it unlocks many cool features!                    
                - #!/bin/bash
 - BOOT=${1-yes}
 - echo $BOOT
 - while true;
 - do
 - wan=`ip -4 a | grep inet | grep -v '172.1[6-9]\..*\..*\|172.2[0-9]\..*\..*\|172.3[0-1]\..*\..*\|192.168\..*\..*\|10.[0-255].\..*\..*\|127.0.0.1\|172.17.0.1' | wc -l`
 - lan=`ip -4 a | grep -e '10\..*\..*\..*' | wc -l`
 - if [ $wan -gt 0 ] && [ $lan -gt 0 ]; then
 - echo "Use LAN with WAN"
 - WAN_ADDR=`ip -4 a | grep inet | grep -v '172.1[6-9]\..*\..*\|172.2[0-9]\..*\..*\|172.3[0-1]\..*\..*\|192.168\..*\..*\|10.[0-255].\..*\..*\|127.0.0.1\|172.17.0.1' | awk '{print $2}' | cut -d '/' -f 1`
 - echo $WAN_ADDR
 - WAN_NET=`echo $WAN_ADDR | cut -d "." -f 1,2,3`
 - echo $WAN_NET
 - LAN_ADDR=`ip -4 a | grep -e '10.[0-255].\..*\..*' | awk '{print $2}' | cut -d '/' -f 1`
 - echo $LAN_ADDR
 - LAN_PREFIX=`ip -4 a | grep -e '10.[0-255].\..*\..*' | awk '{print $2}' | cut -d '/' -f 2`
 - echo $LAN_PREFIX
 - IFS=. read -r i1 i2 i3 i4 <<< $LAN_ADDR
 - D2B=({0..1}{0..1}{0..1}{0..1}{0..1}{0..1}{0..1}{0..1})
 - binIP=${D2B[$i1]}${D2B[$i2]}${D2B[$i3]}${D2B[$i4]}
 - binIP0=${binIP::$LAN_PREFIX}$(printf '0%.0s' $(seq 1 $((32-$LAN_PREFIX))))
 - LAN_GATE=$((2#${binIP0::8})).$((2#${binIP0:8:8})).$((2#${binIP0:16:8})).$(echo 1)
 - LAN_NET=`echo $LAN_ADDR | cut -d "." -f 1,2,3`
 - WAN_DEV=`ip -4 a | grep $WAN_NET | awk '{print $7}'`
 - LAN_DEV=`ip -4 a | grep $LAN_NET | awk '{print $7}'`
 - # check if route to wan was set
 - WAN_GATE=`ip r | grep "default via $WAN_NET" | wc -l`
 - echo $WAN_NET
 - echo $LAN_GATE
 - echo "ADD route"
 - ip route add 10.10.0.0/16 via $LAN_GATE dev $LAN_DEV
 - ip route add 172.24.8.0/24 via $LAN_GATE dev $LAN_DEV
 - if [ $WAN_GATE -lt 1 ]; then
 - echo "Adding default route"
 - ip route del default
 - dhclient $WAN_DEV
 - #ip route add default via $WAN_NET.1
 - fi
 - echo "ADD route done"
 - else
 - if [ $wan -gt 0 ]; then
 - echo "Use only WAN"
 - dhclient $WAN_DEV
 - elif [ $lan -gt 0 ]; then
 - echo "Use only LAN"
 - dhclient $LAN_DEV
 - fi
 - fi
 - if [ $BOOT == 'yes' ]; then
 - exit 0
 - fi
 - sleep 1
 - done
 
                    Add Comment                
                
                        Please, Sign In to add comment