Używam tcpdump do niektórych testów Chcę zobaczyć adres IP i numer portu, ale dane wyjściowe tcpdump są jak
IP pl1snu.koren.kr.http > kitch.pl.sophia.inria.fr.dnp: Flags [P.], seq 54:72, ack 1, win 5792, length 18
pokazuje tylko nazwę hosta i protokół http, łatwo jest wiedzieć, że to 80, ale dla dnp muszę szukać
więc czy można zrobić, aby tcpdump wyświetlał adres IP i numer portu, ale nie nazwę hosta i protokół, jeśli tak, to w jaki sposób? dzięki
linux
networking
tcpdump
tajemnice
źródło
źródło
-n
Używam
-nn
parametru.Uruchom jako:
źródło
-n
działa tylko w przypadku nazw hostów, ale nie działa w przypadku numerów portów.-nn
robi lewę dla obu. To działa tcpdump w wersji 4.5.1 na Fedorze 20 gnu / linux. Zaliczona odpowiedź @ATMc jest jedyną poprawną. Niestety nie mogę ani go głosować, ani pisać poniżej komentarza z powodu niskiej karmy.źródło
Myślę, że najlepszym podejściem jest:
Kroki do przetestowania:
Otwórz konsolę i wpisz:
Otwórz kolejną konsolę i wpisz:
Jeśli wyjście jest zbyt szczegółowe, możesz je odfiltrować (
| grep -v "patter1n|pattern2"
)Otwórz trzecią konsolę i wpisz:
Oczekiwany wynik:
Jeśli użyjesz
sudo tcpdump -i any
, zobaczysz coś takiego:źródło
-i any
nie jest to konieczne, jeśli chcesz ukryć konwersję adresu / portu do nazwy, tylko-n
to się liczy.źródło
-nn
do wyświetlenia usług takich jak „http” i „dnp” jako portu numer zamiast nazwy (która była prezentowana w trzech poprzednich odpowiedziach) i (2) użyj,awk
aby wyrzucić dane na zawartość pakietu (co prawdopodobnie nie jest pożądane).