From 2c759a412f825afa2a415777d9bd97f10b8e669f Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Wed, 8 Aug 2018 20:08:26 -0400 Subject: [PATCH] Have dhcp.pm use ip instead of netstat --- xCAT-server/lib/xcat/plugins/dhcp.pm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/xCAT-server/lib/xcat/plugins/dhcp.pm b/xCAT-server/lib/xcat/plugins/dhcp.pm index ccdcad7bf..285aa0df4 100644 --- a/xCAT-server/lib/xcat/plugins/dhcp.pm +++ b/xCAT-server/lib/xcat/plugins/dhcp.pm @@ -1696,11 +1696,13 @@ sub process_request } else { - my @nsrnoutput = split /\n/, `/bin/netstat -rn`; + my @nsrnoutput = split /\n/, `ip -4 route`; splice @nsrnoutput, 0, 2; foreach (@nsrnoutput) { #scan netstat my @parts = split /\s+/; - push @nrn, $parts[0] . ":" . $parts[7] . ":" . $parts[2] . ":" . $parts[3]; + my ($subnetip, $subnetcidr) = split('/', $parts[0]); + $subnetcidr = xCAT::NetworkUtils::formatNetmask($subnetcidr, 1, 0); + push @nrn, $subnetip . ":" . $parts[2] . ":" . $subnetcidr . ":" . $parts[1]; } my @ip6routes = `ip -6 route`; foreach (@ip6routes) { @@ -2003,7 +2005,7 @@ sub process_request } #if ($activenics{$line[1]} and $line[3] !~ /G/) - if ($activenics{$netif} and $line[3] !~ /G/) + if ($activenics{$netif} and $line[3] !~ /via/) { addnet($line[0], $line[2]); }