У меня есть сервер NFS, работающий на 10.77.123.50
. Однако я получаю тайм-аут RPC, когда пытаюсь смонтировать этот сервер.
Задний план: И сервер, и клиент находятся на CentOS 7.4.1708. iptables
остановлен на обеих машинах. В /etc/hosts.*
файлы на обеих машинах пусты.
Шаг 1 (от клиента): showmount -e 10.77.123.50
rpc mount export: RPC: Timed out
Шаг 2 (от клиента): Я вижу, что мой rpcbind
и nfs
службы работают нормально самостоятельно с systemctl status {rpcbind,nfs}
.
Шаг 3 (от клиента): rpcinfo -p 10.77.123.50
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 45198 status
100024 1 tcp 57197 status
100005 1 udp 20048 mountd
100005 1 tcp 20048 mountd
100005 2 udp 20048 mountd
100005 2 tcp 20048 mountd
100005 3 udp 20048 mountd
100005 3 tcp 20048 mountd
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 3 tcp 2049 nfs_acl
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
100227 3 udp 2049 nfs_acl
100021 1 udp 51317 nlockmgr
100021 3 udp 51317 nlockmgr
100021 4 udp 51317 nlockmgr
100021 1 tcp 33107 nlockmgr
100021 3 tcp 33107 nlockmgr
100021 4 tcp 33107 nlockmgr
Шаг 4 (от клиента): Я могу подключиться к серверу и telnet к обоим его портам NFS.
# ping 10.77.123.50
PING 10.77.123.50 (10.77.123.50) 56(84) bytes of data.
64 bytes from 10.77.123.50: icmp_seq=1 ttl=64 time=0.122 ms
# telnet 10.77.217.50 111
Trying 10.77.217.50...
Connected to 10.77.217.50.
# telnet 10.77.123.50 2049
Trying 10.77.123.50...
Connected to 10.77.123.50.
Шаг 5 (с сервера): tcpdump -i $INTERFACE host 10.77.123
Я вижу пакеты, поступающие от клиента через случайные порты (например, 59295
, 57291
, 40146
, 49933
) и исходящие к клиенту с сервера .mountd
, .sunrpc
и .nfs
порты. Вот пример для диапазона времени 3 секунды с 105 пакетами:
# first 9 packets
IP server.nfs > client.59295: Flags [P.], seq 1:29, ack 45, win 227, options [nop,nop,TS val 3265431829 ecr 10092752], length 28: NFS reply xid 1018070416 reply ok 24 null
IP client.59295 > server.nfs: Flags [.], ack 29, win 229, options [nop,nop,TS val 10092752 ecr 3265431829], length 0
IP client.59295 > server.nfs: Flags [F.], seq 45, ack 29, win 229, options [nop,nop,TS val 10092752 ecr 3265431829], length 0
IP server.nfs > client.59295: Flags [F.], seq 29, ack 46, win 227, options [nop,nop,TS val 3265431829 ecr 10092752], length 0
IP client.59295 > server.nfs: Flags [.], ack 30, win 229, options [nop,nop,TS val 10092752 ecr 3265431829], length 0
IP client.57291 > server.sunrpc: UDP, length 56
IP server.sunrpc > client.57291: UDP, length 28
IP client.40146 > server.mountd: UDP, length 40
IP server.mountd > client.48400: Flags [.], ack 46, win 227, options [nop,nop,TS val 3265431868 ecr 10092752], length 0
# last 7 packets
IP client.49933 > server.mountd: Flags [S], seq 1812867745, win 29200, options [mss 1460,sackOK,TS val 10095756 ecr 0,nop,wscale 7], length 0
IP server.mountd > client.49933: Flags [S.], seq 2225809285, ack 1812867746, win 28960, options [mss 1460,sackOK,TS val 3265434833 ecr 10095756,nop,wscale 7], length 0
IP client.49933 > server.mountd: Flags [.], ack 1, win 229, options [nop,nop,TS val 10095756 ecr 3265434833], length 0
IP client.49933 > server.mountd: Flags [P.], seq 1:45, ack 1, win 229, options [nop,nop,TS val 10095756 ecr 3265434833], length 44
IP client.49933 > server.mountd: Flags [P.], seq 1:45, ack 1, win 229, options [nop,nop,TS val 10095957 ecr 3265434833], length 44
IP client.49933 > server.mountd: Flags [P.], seq 1:45, ack 1, win 229, options [nop,nop,TS val 10096161 ecr 3265434833], length 44
IP client.49933 > server.mountd: Flags [P.], seq 1:45, ack 1, win 229, options [nop,nop,TS val 10096570 ecr 3265434833], length 44
Я не знаю, что я могу диагностировать из вышеперечисленного tcpdump
. Что еще я могу сделать для устранения моей проблемы?