GNU/Linux >> Znalost Linux >  >> Linux

Jak pingnout na konkrétní číslo portu

Pingové porty je jednou z nejúčinnějších technik odstraňování problémů, abyste zjistili, zda služba existuje nebo ne.

Příkaz ping, který denně používají správci systému, využívá protokol ICMP a získává provozní informace o vzdálených hostitelích.

Ping na hostitele však není vždy dostačující:možná budete muset testovat konkrétní port na vašem serveru.

Tento konkrétní port může souviset s databází nebo webovým serverem Apache nebo dokonce s proxy serverem ve vaší síti.

V tomto tutoriálu se podíváme, jak můžete pingnout na konkrétní port pomocí řady různých příkazů.

Ping na konkrétní port pomocí telnetu

Nejjednodušší způsob, jak pingnout na konkrétní port, je použít příkaz telnet následovaný IP adresa a port, na který chcete odeslat příkaz ping.

Můžete také zadat název domény místo IP adresy následovaný konkrétním portem, který má být testován.

$ telnet <ip_address> <port_number>

$ telnet <domain_name> <port_number>

Příkaz „telnet“ je platný pro Windows a Unix operační systémy.

Pokud čelíte „telnet:příkaz nenalezen ” na vašem systému, budete muset nainstalovat telnet na váš systém spuštěním následujících příkazů.

$ sudo apt-get install telnet

Řekněme například, že máme web běžící na webovém serveru Apache na IP adrese 192.168.178.2 v naší místní síti.

Ve výchozím nastavení běží webové stránky na portu 80:toto je konkrétní port, na který se chystáme pingnout, abychom zjistili, zda je náš web aktivní.

$ telnet 192.168.178.2 80

Trying 192.168.178.2...
Connected to 192.168.178.2.
Escape character is '^]'.

$ telnet 192.168.178.2 389
Connected to 192.168.178.2.
Escape character is '^]'.

Možnost připojení ke vzdálenému hostiteli jednoduše znamená, že vaše služba je v provozu.

Chcete-li ukončit nástroj Telnet, můžete použít klávesy „Ctrl“ + „]“ k ukončení a provedení příkazu „q“ k ukončení.

Ping pro konkrétní port pomocí nc

Chcete-li pingnout na konkrétní číslo portu, spusťte příkaz „nc“ s možností „v“ pro „verbose“, „z“ pro „skenování“ a zadejte hostitele a také port, na který se má ping odeslat.

Můžete také zadat název domény místo IP adresy následovaný portem, který chcete pingnout.

$ nc -vz <host> <port_number>

$ nc -vz <domain> <port_number>

Tento příkaz funguje pro Unix systémy, ale můžete najít alternativy netcat online pro Windows.

Pokud příkaz „nc“ není ve vašem systému nalezen, budete jej muset nainstalovat spuštěním příkazu „apt-get install“ jako uživatel sudo.

$ sudo apt-get install netcat

Řekněme například, že chcete pingnout vzdálený web HTTP na jeho portu 80, spustili byste následující příkaz.

$ nc -vz amazon.com 80

amazon.com [<ip_address>] 80 (http) open

Jak můžete vidět, připojení bylo úspěšně otevřeno na portu 80.

Na druhou stranu, pokud se pokusíte pingnout na konkrétní port, který není otevřený, zobrazí se následující chybová zpráva.

$ nc -vz amazon.com 389

amazon.com [<ip_address>] 389 (ldap) : Connection refused

Pingujte porty pomocí nmap

Velmi snadným způsobem pingu na konkrétní port je použití příkaz nmap s možností „-p“ pro port a zadejte číslo portu a název hostitele, který se má skenovat.

$ nmap -p <port_number> <ip_address>

$ nmap -p <port_number> <domain_name>

Poznámka :pokud používáte nmap, mějte na paměti, že byste si měli být vědomi právních problémů, které s tím mohou souviset. V tomto tutoriálu předpokládáme, že skenujete místní porty pouze pro účely monitorování.

Pokud příkaz „nmap“ není na vašem hostiteli dostupný, budete ho muset nainstalovat.

$ sudo apt-get install nmap

Řekněme například, že chcete pingnout „192.168.178.35/24“ ve vaší místní síti na výchozí port LDAP:389.

$ nmap -p 389 192.168.178.35/24

Jak vidíte, říká se, že port 389 je na tomto virtuálním počítači otevřený a uvádí, že tam běží OpenLDAP server.

Skenování rozsahu portů pomocí nmap

Chcete-li prohledat rozsah portů pomocí nmap, můžete spustit „nmap“ s možností „p“ pro „porty“ a určit rozsah, na který se má pingnout.

$ nmap -p 1-100 <ip_address>

$ nmap -p 1-100 <hostname>

Znovu, pokud se pokusíme prohledat rozsah portů na „192.168.178.35/24“, spustíme následující příkaz

$ nmap -p 1-100 192.168.178.35/24

Pingujte na konkrétní port pomocí Powershell

Pokud používáte počítač v prostředí Windows, můžete ping na konkrétní čísla portů pomocí Powershell.

Tato možnost může být velmi užitečná, pokud plánujete zahrnout tuto funkci do automatických skriptů.

Abyste mohli pingnout konkrétní port pomocí Powershell, musíte použít příkaz „Test-NetConnection“ následovaný IP adresou a číslem portu, na který se má pingnout.

$ Test-NetConnection <ip_address> -p <port_number>

Řekněme například, že chceme pingnout hostitele „192.168.178.35/24“ na portu 389.

Abychom toho dosáhli, spustili bychom následující příkaz

$ Test-NetConnection 192.168.178.35 -p 389

Na posledním řádku můžete vidět, zda bylo volání TCP úspěšné nebo ne:v našem případě dosáhlo portu na portu 389.

Terminologie aplikace Word on Ping

Technicky neexistuje nic takového, jako je pinging na konkrétní port na hostiteli.

Odeslání požadavku „ping“ vzdálenému hostiteli znamená, že používáte protokol ICMP za účelem kontroly síťového připojení.

ICMP se používá hlavně k diagnostikování problémů se sítí to by vám zabránilo v přístupu k hostitelům.

Když provádíte „ping na port “, ve skutečnosti navazujete připojení TCP mezi vaším počítačem a vzdáleným hostitelem na konkrétním portu.

Je však velmi běžné, že technici uvádějí, že „pingnou port“, ale ve skutečnosti buď skenují, nebo otevírají TCP spojení.

Závěr

V tomto tutoriálu jste se naučili všechny způsoby, které lze použít k testování konkrétního portu.

Většinu příkazů použitých v tomto kurzu lze použít v systému Windows , Unix nebo MacOS operační systémy.

Nemusí být přímo dostupné, ale budete moci najít bezplatné a open source alternativy pro váš operační systém.

Pokud vás zajímá Správa systému Linux , máme na webu kompletní sekci věnovanou tomu, takže se na to určitě podívejte!


Linux
  1. Jak změnit port SSH v Linuxu

  2. Jak nastavit SSH tunelování

  3. Jak zabít proces běžící na konkrétním portu v Linuxu?

  1. Jak zablokovat konkrétní port na CentOS 8, jako je 22

  2. Jak provést příkaz Ping pouze pro N počet paketů

  3. Je možné pingnout adresu:port?

  1. Linux – Jak připojit vzdálený souborový systém se zadáním čísla portu?

  2. Jak zobrazit konkrétní řádky souboru v příkazovém řádku Linuxu

  3. Jak vybrat statické číslo portu pro vlastní aplikaci?