Я пытаюсь отладить, почему я не могу смонтировать общий ресурс NFS на сервере из клиента Linux. После долгих испытаний на сервере NFS и возможности смонтировать его локально на той же машине я начал пытаться понять, не является ли это сетевой проблемой, и то, что я вижу, немного сбивает меня с толку. На сервере не работает брандмауэр, и у меня есть куча других служб (HTTP/S, DLNA, Mosquitto...), которые безупречно работают как из моей внутренней сети, так и из Интернета на том же сервере. Я сделал tcptraceroute от клиента к серверу через порт 2049, и сервер отвечает правильно.Я даже пробовал чистый telnet от клиента к серверу через порт 2049, прослушивая с помощью tshark на обоих концах, и я вижу, что на обоих концах устанавливается правильная последовательность TCP SYN, SYN, ACK, но когда я пытаюсь смонтировать общие ресурсы NFS из клиент, я вижу TCP SYN, выходящий из клиентской машины, и ничего такого заходит на tshark на серверную машину. Это похоже на то, что пакет TCP SYN никогда не приходит на сервер! Вот что я вижу в окне tshark клиента (.3):
1 0.000000000 192.168.1.3 – 192.168.1.2 TCP 74 758 – 2049 [SYN] Seq=0 Win=64240 Len=0 MSS=1460 SACK_PERM=1 TSval=2121012438 TSecr=0 WS=128
2 1.007908102 192.168.1.3 – 192.168.1.2 TCP 74 [Повторная передача TCP] 758 – 2049 [SYN] Seq=0 Win=64240 Len=0 MSS=1460 SACK_PERM=1 TSval=2121013446 TSecr=0 WS=128
3 3.024014290 192.168.1.3 – 192.168.1.2 TCP 74 [Повторная передача TCP] 758 – 2049 [SYN] Seq=0 Win=64240 Len=0 MSS=1460 SACK_PERM=1 TSval=2121015462 TSecr=0 WS=128
и ничего не отображается на сервере (.2), в то время как чистый tcptracoute на клиенте показывает:
TCPTracoute 192.168.1.2 2049
Выбрано устройство enx9cebe8fc1358, адрес 192.168.1.3, порт 47199 для исходящих пакетов
Трассировка пути к 192.168.1.2 на TCP-порту 2049 (nfs), не более 30 переходов
1 192.168.1.2 [открыто] 0,501 мс 0,441 мс 0,493 мс
Выход Тшарка:
1 0.000000000 192.168.1.3 – 192.168.1.2 TCP 54 57737 – 2049 [SYN] Seq=0 Win=0 Len=0
2 0.000455085 192.168.1.2 – 192.168.1.3 TCP 60 2049 – 57737 [SYN, ACK] Seq=0 Ack=1 Win=64240 Len=0 MSS=1460
3 0.000495873 192.168.1.3 – 192.168.1.2 TCP 54 57737 – 2049 [RST] Seq=1 Win=0 Len=0
4 0.006264763 192.168.1.3 – 192.168.1.2 TCP 54 [Повторная передача TCP] 57737 – 2049 [SYN] Seq=0 Win=0 Len=0
5 0.006690795 192.168.1.2 – 192.168.1.3 TCP 60 [Предыдущий сегмент TCP не захвачен] [Номера портов TCP используются повторно] 2049 – 57737 [SYN, ACK] Seq=97837 Ack=1 Win=64240 Len=0 MSS= 1460
6 0.006737449 192.168.1.3 – 192.168.1.2 TCP 54 57737 – 2049 [RST] Seq=1 Win=0 Len=0
7 0.022031295 192.168.1.3 – 192.168.1.2 TCP 54 [Повторная передача TCP] 57737 – 2049 [SYN] Seq=0 Win=0 Len=0
8 0.022406482 192.168.1.2 – 192.168.1.3 TCP 60 [TCP Предыдущий сегмент не захвачен] [Номера портов TCP используются повторно] 2049 – 57737 [SYN, ACK] Seq=343671 Ack=1 Win=64240 Len=0 MSS= 1460
9 0.022447549 192.168.1.3 – 192.168.1.2 TCP 54 57737 – 2049 [RST] Seq=1 Win=0 Len=0
У меня нет идей здесь, поэтому любые предложения приветствуются. Я не думаю, что это сервер NFS, так как tshark не показывает никаких пакетов, поступающих на сервер через порт 2049, который я вижу на любом интерфейсе... Может ли быть так, что ядро сервера отбрасывает пакеты перед показом в tshark для некоторая причина? Отбрасывает ли NFS-ядро-сервер пакеты, прежде чем позволить tshark их увидеть? Возможно ли это?
Что ж, спасибо за все возможные дикие идеи!
/Начо