Синтаксическая ошибка выражения tcpdump в `ip proto tcp`
Я внимательно изучил справочные страницы tcpdump и pcap-filter (который определяет грамматику выражения tcpdump), но не смог найти, почему мое выражение является ошибкой:
$ sudo tcpdump -i lo 'ip proto tcp'
tcpdump: syntax error
Страница man четко изложена ip proto protocol
действительная грамматика: https://www.tcpdump.org/manpages/pcap-filter.7.html
Может ли проблема быть несовпадением версий?
1 ответ
Похоже, tcpdump не понимает tcp
псевдоним в этом контексте. Вам нужно будет использовать фактический номер протокола IP:
sudo tcpdump -i lo ip proto 0x6
Если вы хотите IPv6, а то, что tcpdump -i lo tcp
переводится как):
sudo tcpdump -i lo ip proto 0x6 or ip6 proto 0x6