5 Linuxový nástroj pro testování síťového připojení

Přemýšlíte, jak zkontrolovat připojení mezi dvěma koncovými body sítě?

Jednou z běžných úloh správce systému je kontrola připojení za účelem řešení problémů se sítí. Může to být cokoli, například aplikace se nemůže připojit k backendové službě, nemůže načíst data z externí adresy URL, ověřit, zda je otevřen tok atd.

Ať už je to cokoli, pomůže vám následující nástroj/příkaz. Jsou otestovány na CentOS 7.x a nevidím důvod, proč by neměly fungovat i na jiné linuxové distribuci.

Prozkoumejme…

telnet

Jeden z hojně používaných příkazů pro testování základní konektivity mezi servery, serveru k IP jiného síťového zařízení. Syntaxe příkazu je jednoduchá.

telnet $destinationIP $PORT

Řekněme, že chcete otestovat, zda se můžete připojit k portu 8080 na IP adrese 10.0.0.1; pak by příkaz zněl.

telnet 10.0.0.1 8080

Pokud není s připojením žádný problém, pak byste měli vidět zprávu o připojení.

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

Poznámka: pokud se vám při spuštění telnetu zobrazí příkaz nenalezen, pak musíte nainstalovat telnet, jak jsem vysvětlil zde.

Ve většině scénářů by měl telnet pomoci. Pokud však potřebujete jinou možnost, pak zde uvádíme několik alternativ telnetu.

ncat nebo nc

Ncat (také známý jako nc) je výkonný síťový nástroj s mnoha funkcemi, jako je navázání a přijetí spojení, vzdálené spuštění příkazu, zápis a čtení dat atd. Funguje jak na IPv4, tak na IPv6.

Pro jednoduchý test, zda je port otevřen, nebo ne, provedete následující příkaz.

nc -vz $HOSTNAME $PORT

Podívejme se na příklad testování portu 443 na geekflare.com.

# nc -vz geekflare.com 443Ncat: Version 7.50 ( https://nmap.org/ncat )Ncat: Connected to 104.25.133.107:443.Ncat: 0 bytes sent, 0 bytes received in 0.02 seconds.#

Jak již bylo zmíněno, můžete také použít nc pro navázání spojení k naslouchání na určitém portu. To se může hodit v případě, že nemáte spuštěné skutečné služby, ale chcete zajistit existenci připojení.

Pro zahájení naslouchání na portu:

nc -l $PORTNUMBER

Váže port na dané číslo.

Pokud není ncat nainstalován, můžete to na serverech CentOS/RHEL provést pomocí yum install nc.

wget

wget je užitečný příkaz pro stahování/testování HTTP, HTTPS a FTP. Pokud pracujete jako webový inženýr nebo často řešíte problémy související s webem, pak je wget vaším přítelem. Testování pomocí wget je jednoduché.

wget $URL

Tady je příklad testování tools.geekflare.com

# wget tools.geekflare.com--2019-05-09 20:40:01-- http://tools.geekflare.com/Resolving tools.geekflare.com (tools.geekflare.com)... 104.25.134.107, 104.25.133.107, 2606:4700:20::6819:866b, ...Connecting to tools.geekflare.com (tools.geekflare.com)|104.25.134.107|:80... connected.HTTP request sent, awaiting response... 301 Moved PermanentlyLocation: https://tools.geekflare.com/ --2019-05-09 20:40:01-- https://tools.geekflare.com/Connecting to tools.geekflare.com (tools.geekflare.com)|104.25.134.107|:443... connected.HTTP request sent, awaiting response... 200 OKLength: unspecified Saving to: 'index.html.2' 15,139 --.-K/s in 0.001s 2019-05-09 20:40:02 (12.8 MB/s) - 'index.html.2' saved #

Pokud se zobrazí připojeno, znamená to, že není žádný problém s připojením.

curl

Curl je víceúčelový nástroj.

Víte, že pomocí curl můžete telnetovat na port?

No, teď už to víte.

curl -v telnet://$IP:$PORT

Následující příklad je funkční.

# curl -v telnet://chandan.io:443* About to connect() to chandan.io port 443 (#0)* Trying 104.31.68.106...* Connected to chandan.io (104.31.68.106) port 443 (#0)

A když není žádný naslouchající port nebo problém s firewallem, pak uvidíte, že se snažíte…

# curl -v telnet://chandan.io:4434* About to connect() to chandan.io port 4434 (#0)* Trying 104.31.68.106...

Ke stažení dat můžete také použít curl. Podporuje více protokolů – HTTP, HTTPS, FTP, IMAP, LDAP, POP3, SCP, SFTP, GOPHER atd.

nmap

Oblíbený nástroj se stovkami funkcí. Často je považován za bezpečnostní nástroj. nmap umožňuje testovat jednu IP/port nebo v rozsahu.

Testování jednoho portu

nmap -p $PORT $IP

Příklad testování portu 443 na siterelic.com

# nmap -p 443 siterelic.comStarting Nmap 7.70 ( https://nmap.org ) at 2019-05-10 06:55 UTCNmap scan report for siterelic.com (104.27.174.50)Host is up (0.0079s latency).Other addresses for siterelic.com (not scanned): 104.27.175.50 2606:4700:30::681b:ae32 2606:4700:30::681b:af32PORT STATE SERVICE443/tcp open httpsNmap done: 1 IP address (1 host up) scanned in 0.13 seconds#

Podívejte se na sloupec stav. Pokud vidíte open, znamená to, že připojení je v pořádku. A pokud je stav filtrován, znamená to, že připojení neexistuje.

Závěr

telnet se v nejnovější verzi Linuxu postupně ukončuje. Díky výše uvedené alternativě telnetu.

Pokud jste v Linuxu nováčci a chcete se něco naučit, podívejte se na tento kurz Udemy.

.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.