Как я могу использовать grep, чтобы найти номер IPV4 в файле pcap с синтаксисом регулярных выражений?

Я новичок в Ubuntu.

У меня есть это регулярное выражение IP '\b((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\.|$)){4}\b' У меня есть сетевой файл pcap, я хочу использовать это регулярное выражение и grep -e, чтобы найти все IP-адреса в файле.

Я пытался: egrep '[[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3}' -f Ncapture.pcap

Как использовать команду grep для поиска IP-адреса в сетевом файле pcap?

0
задан 12 December 2013 в 15:21

1 ответ

Ваша команда egrep работает для меня, чтобы заставить grep -e работать только без управляющих символов, и чтобы он печатал только IP-адреса, используйте опцию -o для grep:

tcpdump -nr Ncapture.pcap | grep -oe '\(\(25[0-5]\|2[0-4][0-9]\|[01]\?[0-9][0-9]\?\)\(\.\|$\)\)\{4\}'

Но, как я вижу, это будет печатать точку в конце IP, если вам это не нравится, то вы должны добавить последний октет отдельно, то есть:

tcpdump -nr Ncapture.pcap | grep -oe '\(\(25[0-5]\|2[0-4][0-9]\|[01]\?[0-9][0-9]\?\)\(\.\|$\)\)\{3\}\(25[0-5]\|2[0-4][0-9]\|[01]\?[0-9][0-9]\?\)'

К сделать так, чтобы IP-адрес печатался только один раз:

tcpdump -nr Ncapture.pcap | grep -oe '\(\(25[0-5]\|2[0-4][0-9]\|[01]\?[0-9][0-9]\?\)\(\.\|$\)\)\{3\}\(25[0-5]\|2[0-4][0-9]\|[01]\?[0-9][0-9]\?\)' | sort | uniq
0
ответ дан 12 December 2013 в 15:21
  • 1
    Я didn' t помог мне. Теперь меня оставляют с одним решением, и это должно переустановить Ubuntu. Но, если php начнет работать до этого, это будет жизненное средство сохранения мне. – Anuj TBE 9 June 2015 в 21:58

Другие вопросы по тегам:

Похожие вопросы: