Использование tcpdump для извлечения содержимого NFS RPC

Довольно простой вопрос … Я запускаю tcpdump и пытаюсь проанализировать содержимое пакетов TCP между сервером / клиентом. Я вижу, что RPC «GETATTR» получен, что здорово! Однако я хочу знать файл, для которого выполняется RPC. Я предполагаю, что это содержимое пакета. Когда я печатаю tcpdump как ASCII.

From server: tcpdump -vvv -s 200 port 2049 14:45:38.408949 IP (tos 0x0, ttl 64, id 58408, offset 0, flags [DF], proto TCP (6), length 296) myserver.nfs > myclient.2469839164: reply ok 240 getattr NON 3 ids 0/3 sz 0 

Здесь и на других сайтах показано, что можно сопоставить имена файлов. Может быть, это зависит от платформы? Я просто хочу убедиться, что нет tcpdump, которого я не вижу.

Я запускаю RH5 – Kernel 2.6.32-279.el6.x86_64

2 Solutions collect form web for “Использование tcpdump для извлечения содержимого NFS RPC”

Итак, я думаю, мне удалось найти «обходной путь». Вы не сможете получить имя файла, используя NFSv3, но вы сможете указать индекс.

Используя Wireshark,

Перейдите в Edit -> Preferences -> Protocols -> NFS -> отметьте все поля и установите «Decode nfs handle как: KNFSD_LE.

Сохрани это. Теперь захватите и отфильтруйте протокол NFS.

Поиск пакета GETATTR Reply (Call in #) Regular file mode: ???.

Откройте это упакованное и разверните следующее:

 Network File System -> obj_attributes 

проверьте значение fileid , это будет номер inode файла.

на сервере перейдите на раздел nfs и

 find . -inum inode 

С NFSv4 вы видите вызов с именем файла напрямую.

Вы можете посмотреть инструмент nfstrace на github: ( https://github.com/epam/nfstrace ). Он отслеживает все захваченные процедуры NFSv3 / NFSv4.

  • Пакеты исходящих соединений tcp dump
  • Подсчитайте все сетевые запросы на конкретный хост
  • Как захватить сетевые трассы, содержащие только определенную строку?
  • Сброс многоадресного потока UDP с помощью socat
  • Как использовать tshark или tcpdump для вычисления переданных байтов
  • могу ли я настроить SSH, чтобы он не использовал шифрование?
  • Удаление pauses больше, чем x из файла pcap
  • латентность маршрутизатора, измеренная tcpdump, увеличивается
  • Как читать байты hexdump by byte в bash или awk?
  • Sendmail - ошибка ввода-вывода «Преждевременная EOM» в maillogs
  • Проблема с сетью - только одна машина не может получить доступ к веб-странице на другом компьютере
  • Linux и Unix - лучшая ОС в мире.