Dave Anderson <anderson(a)redhat.com> writes:
----- "Anirudh Srinivasan" <srianirudh(a)gmail.com>
wrote:
> hello friends,
>
> I was setting up netdump server in my workplace. I followed the
> following procedure:
>
> Server Configuration:
>
> 1.
> Verify that the netdump server is installed: rpm -q netdump-server .
> If it is not installed, install it by running the command: up2date
> netdump-server .
> 2.
> After the netdump server package is installed change the password for
> the "netdump" user to something that you know: passwd netdump
> 3.
> Enable the netdump server: chkconfig netdump-server on
> 4.
> Start the netdump server: service netdump-server start
>
> Client Configuration:
>
> 1.
> Verify that the netdump client is installed: rpm -q netdump . If it is
> not installed, install it by running the command: up2date netdump .
> 2.
> Edit /etc/sysconfig/netdump and add the following line:
> NETDUMPADDR=192.168.0.5 **192.168.0.5 should be changed to the ip
> address of the netdump server.
> 3.
> Enter the following command and give the netdump password when
> prompted: service netdump propagate
> 4.
> Enable the netdump client: chkconfig netdump on
> 5.
> Start the netdump client: service netdump start
>
> Now after doing this i get the following message:
>
> # service netdump start
> netdump: cannot arp <ipaddress>
> netdump: cannot find <ipaddress>in arp cache
> netdump: can't resolve <ipaddress> MAC address
> netdump server address resolution [FAILED]
>
>
> What could be the reason for this ? How could i solve this?
There's a couple other netdump masters on this list who can
hopefully help you out, but I'd start by taking a look at the
"print_address_info()" function in the /etc/rc.d/init.d/netdump
script. It does a traceroute of your configured netdump-server
IP to get the MAC address of the gateway if needed:
# the needed MAC address is directly associated with the host
# IP address only if client and server are on the same subnet
# if not, the needed MAC address is that of the gateway;
# either way, this will be the first IP address from traceroute
trc_output="$(traceroute -i $DEV -n -m 1 $host_ip 2> /dev/null)"
if [ $? -eq 0 ]; then
trc_output="$(echo $trc_output | grep '^1 ' | awk '{print
$2}')"
for line in $trc_output; do mac_ip=$line; done
else
echo "$prog: cannot traceroute $host_ip on interface $DEV" 1>&2
mac_ip=$host_ip
fi
And then based upon what it got back, the subsequent arping error
message that you're seeing is generated:
# If the server is on the same subnet as the client, but is currently
# offline, then the first hop will show up as our local address. This
# would not be a working setup, so we set mac_ip to the server ip.
localaddr=$(ip_of_device $DEV)
[ "mac_ip" = "$localaddr" ] && mac_ip=$host_ip
arping -c 1 -I $DEV $mac_ip &> /dev/null
[ $? -ne 0 ] && echo "$prog: cannot arp $mac_ip on $DEV"
1>&2
So you can do the traceroute and arping commands above yourself to find out
exactly where it's having a problem.
A common problem is not specifying the DEV= line in
/etc/sysconfig/netdump. We need to know which interface netdump is
configured for.
Cheers,
Jeff