Рейтинг:0

Странное поведение клиента при монтировании NFS

флаг be

Я пытаюсь отладить, почему я не могу смонтировать общий ресурс 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 их увидеть? Возможно ли это?

Что ж, спасибо за все возможные дикие идеи! /Начо

Ignacio Más avatar
флаг be
Мне удалось изолировать проблему. Да, это было связано с сетью и из-за двух интерфейсов в одной подсети. Я включил второй интерфейс, перезагрузил свой коммутатор, и теперь я без проблем смонтировал общий ресурс NFS. Удивительно, почему работал telnet к порту и другим службам, но в любом случае, когда у меня просто есть мостовые интерфейсы (сервер + KVM VM) в одном физическом порту eth, он работает. Думаю, мне нужно освежить свои знания о протоколах L2. :-) явно была петля L2, нарушившая протокол NF.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.