Včera se mě tazatel zeptal, jaké je číslo portu pro ping a který protokol ping používá TCP / UDP.
Po rozhovoru prohledávám internet a našel různé výsledky, někdo říká, že ICMP používá port 7, někdo říká, že nepoužívá číslo portu, na jednom webu jsem zjistil, že to používá protokol IP 1 atd.
Může mi někdo pomoci se správným vysvětlením?
S pozdravem, Nishad
Komentáře
- TCP a UDP jsou protokoly vrstvy 4 a porty jsou adresy TCP nebo UDP, ale ICMP je součástí IP (vrstva 3). Z RFC 792: " ICMP, používá základní podporu IP, jako by šlo o protokol vyšší úrovně, avšak ICMP je ve skutečnosti nedílnou součástí IP a musí být implementováno každým modulem IP. "
- Diskuse o vrstvách je zde trochu zavádějící, protože ICMP, TCP a UDP jezdí přímo přes IP jako protokoly 1 , 6, respektive 17. Chcete-li OP, zkontrolujte záhlaví ICMP / TCP / UDP nebo spusťte zachytávání paketů a zjistěte, jak se liší. Nezapomeňte, že ICMP je zcela oddělené od TCP a UDP.
- Získali jste práci?
- Ano, dostal jsem práci.
Odpověď
Standardní příkaz ping nepoužívá TCP ani UDP. Používá ICMP. Přesněji řečeno, používá se ICMP typu 8 (echo message) a typu 0 (echo response message). ICMP nemá žádné porty!
Další podrobnosti najdete v RFC792 .
Komentáře
- Pro objasnění ICMP jezdí přímo přes IP jako IP protokol 1. V záhlaví ICMP máte typy echo / echo response atd. Porovnejte to s TCP a UDP, které fungují přes IP jako IP protokoly 6 a 17, a používají pro odlišení aplikací svůj vlastní portový systém.
- " ICMP má žádné porty! " Přestože má ID dotazů, které jsou za určitých okolností považovány za porty (zejména okolnosti související s NAT).
Odpověď
Rád bych vám dal další odpověď, zejména na tuto část otázky:
… někdo říká, že ICMP používá port 7
Pro službu „echo“ se používá port 7 (TCP i UDP).
Pokud je tato služba k dispozici v počítači, lze použít port UDP 7 namísto ICMP provést „ping“.
Většina moderních počítačů však nemá „echo“ služba běží, takže provádění „ping“ pomocí UDP portu 7 ins tead of ICMP would not work.
And: Jak již naznačují slova „místo ICMP“, „ping“ přes UDP port 7 NE použijte ICMP, ale UDP, což je úplně jiný protokol!
Komentáře
- Jako vyvrácení vašeho odpověď, tady je příspěvek, který někdo řekl na fóru, které jsem o tomto tématu našel: " Lidé, kteří si myslí, že ICMP nějak používá port 7 (stará echo služba, kde by odrážel každý znak , který jste mu poslali) by neměl být v síti a měl by být zastřelen. Pokud nesouhlasíte s tím, co jsem řekl, podívejte se na strukturu datagramu IP a datagramu ICMP. ICMP je zapouzdřen v datagramu IP a poté v datagramu IP do všeho, co konkrétní médium potřebuje k vytvoření rámce. "
- " ICMP nepoužívá port, protože pro něj nemá místo. Je zapouzdřen pouze s IP datagramem. Možnost portu najdete pouze na datagramech UDP a TCP. Chcete-li blokovat ozvěnu ICMP, výslovně zablokujete komunitu typu a kódu "
- Celým tématem fóra je . infosecinstitute.com/discussion/8777
- @JesseP. Napsal jsem, že ICMP používá port 7? Ne. Místo ICMP iv jsem místo " místo " napsal slovo ". id = „49da4e655d“>
tučně označuje, že port 7 nemá nic společného s ICMP. ' Upravím svoji odpověď trochu, aby to bylo jasnější.
Odpověď
Jak již uvedli ostatní, pingy jsou obecně založeny na protokolu ICMP a nemají žádné porty . Existuje však něco jako TCP Ping, kde se místo typického 3-way TCP handshake provádějí pouze první 2 kroky a měří se zpoždění mezi nimi. Jakmile je měření dokončeno, odešle se RST ACK k uzavření napůl otevřeného spojení. Poté se proces opakuje, dokud není dosaženo čítače / doby trvání nebo dokud proces neukončíte.Pomocí protokolu TCP Ping (který často používám k testování otevřených portů na serverech, na kterých pracují moji správci systémů) můžete určit cílové porty, které chcete otestovat (k ověření, zda server naslouchá na určitém portu). Zdrojový port je jen pomíjivý náhodný port.
Pokud byste chtěli vidět příklad nástroje TCP Ping (ten, který používám v systémech Windows), tady je: TCPing . NMAP také přichází s utilitou nazvanou NPING, která má příznak, který jí umožňuje provádět také pingy založené na TCP.
Poznámka: některá síťová zařízení má také tuto schopnost, například ASA společnosti Cisco používající některé z novějších verzí operačního systému. Příkaz je: ping tcp <destination IP> <destination port>
Odpovědět
Ping nepoužívá port, ale protokol. Ping pracuje tak, že cílovému hostiteli zasílá pakety požadavku na odezvu ICMP (Internet Control Message Protocol) a čeká na odpověď na odezvu ICMP. , toto je často deaktivováno.
Odpověď
Ping na Windows & systémech Linux ve výchozím nastavení použijte ICMP. Žádost o ping bude typu 8 & Kód 0 A ping odpověď bude typu 0 & Kód 0
Ke spuštění testu typu ping pro TCP / UDP můžete použít další nástroje. Běžným rychlým testem pro zjištění, zda je otevřený port TCP, je použití klienta telnet ve Windows. Nmap je nástroj třetí strany, který můžete použít v systému Windows a Linux k testování otevřených portů.
Traceroute v systému Windows používá ICMP a Linux ve výchozím nastavení používá UDP.
Můžete to ověřit pomocí drátového žraloka k zachycení provozu a zjistit, jak tyto operační systémy používají nástroje pro odstraňování problémů.
Otázkou bylo pravděpodobně více než otestování vašich znalostí o řešení problémů s nástroji.