From: davidplunkett Date: Thu, 7 Feb 2019 03:59:01 +0000 (+0000) Subject: support multiple subnets on same interface X-Git-Tag: 1.0.0~32 X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=commitdiff_plain;h=d13554f8a7e528d770d68106ee98479c399f79c7;p=redfish.git support multiple subnets on same interface Change-Id: Ia55e58a154452de42b850e7b304217e79ebc3c3c Signed-off-by: davidplunkett --- diff --git a/install_server_os.sh b/install_server_os.sh index ef5c98c..4da8a9b 100755 --- a/install_server_os.sh +++ b/install_server_os.sh @@ -253,20 +253,24 @@ subnet $SRV_SUBNET netmask $SRV_NETMASK { } EOF -LOCAL_INF=$(ip route get $SRV_IP | grep "$SRV_IP" | awk '{print $3}') -LOCAL_SUBNET=$(route -n | grep " U " | grep "$LOCAL_INF" | head -n 1 | awk '{print $1}') -LOCAL_NETMASK=$(route -n | grep " U " | grep "$LOCAL_INF" | head -n 1 | awk '{print $3}') -echo "Local interface to access $SRV_IP is [$LOCAL_INF] with subnet/mask [$LOCAL_SUBNET/$LOCAL_NETMASK]" - -if [ "$SRV_SUBNET" != "$LOCAL_SUBNET" ] && [[ $LOCAL_SUBNET =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]] ; then - echo "Updating dhcp configuration [$DHCP_ROOT/dhcpd.conf] with local subnet [$LOCAL_SUBNET]" - perl -i -p0e "s/^subnet $LOCAL_SUBNET .*?\n\}\n//gms" $DHCP_ROOT/dhcpd.conf - cat >>$DHCP_ROOT/dhcpd.conf </dev/null ; then + echo "Subner [$SRV_SUBNET] is not a local network, attempting to find local subnet for dhcp service" + echo "The dhcp service requires at least one subnet in the configuration to be a local subnet" + LOCAL_INF=$(ip route get $SRV_IP | grep "$SRV_IP" | awk '{print $3}') + LOCAL_SUBNET=$(route -n | grep " U " | grep "$LOCAL_INF" | head -n 1 | awk '{print $1}') + LOCAL_NETMASK=$(route -n | grep " U " | grep "$LOCAL_INF" | head -n 1 | awk '{print $3}') + echo "Local interface to access $SRV_IP is [$LOCAL_INF] with subnet/mask [$LOCAL_SUBNET/$LOCAL_NETMASK]" + + if [ "$SRV_SUBNET" != "$LOCAL_SUBNET" ] && [[ $LOCAL_SUBNET =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]] ; then + echo "Updating dhcp configuration [$DHCP_ROOT/dhcpd.conf] with local subnet [$LOCAL_SUBNET]" + perl -i -p0e "s/^subnet $LOCAL_SUBNET .*?\n\}\n//gms" $DHCP_ROOT/dhcpd.conf + cat >>$DHCP_ROOT/dhcpd.conf <