6 Linux segédprogram a hálózati kapcsolat tesztelésére

Érdekelne, hogyan ellenőrizheti a kapcsolatot két hálózati végpont között?

A sysadmin egyik gyakori feladata a kapcsolat ellenőrzése a hálózati problémák elhárítása érdekében. Ez bármi lehet, például az alkalmazás nem tud csatlakozni a háttérszolgáltatáshoz, nem tud adatokat lekérni a külső URL-ről, ellenőrizni, hogy a folyamat meg van-e nyitva stb.

Bármi is legyen az, a következő segédprogram/parancsok segíthetnek. CentOS-en tesztelték őket, és nem látok okot arra, hogy ne dolgozzak egy másik Linux disztribúción.

Fedezzük fel…

telnet

Az egyik széles körben használt parancs a szerverek, a szerver és egy másik hálózati eszköz IP-címe közötti alapvető kapcsolat tesztelésére. A parancs szintaxisa egyszerű.

telnet $destinationIP $PORT

Tegyük fel, hogy szeretné tesztelni, hogy tud-e csatlakozni a 8080-as porthoz 10.0.0.1 IP-címen; akkor a parancs az lenne.

telnet 10.0.0.1 8080

Ha nincs probléma a csatlakozással, akkor látnia kell a csatlakoztatott üzenetet.

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

Megjegyzés: ha a telnet futtatása közben nem található parancsot kap, akkor telepítenie kell a telnetet, ahogy azt itt leírtam.

A legtöbb esetben a telnetnek segítenie kell. Ha azonban más lehetőségre van szüksége, akkor itt van néhány telnet alternatíva.

ncat vagy nc

Az Ncat (más néven nc) egy hatékony hálózati segédprogram, amely számos funkcióval rendelkezik, mint például kapcsolat kötése és elfogadása, parancsok távoli végrehajtása, adatok írása és olvasása stb. Mindkettő IPv4-en és IPv6-on működik.

  A legújabb AMDGPU-PRO illesztőprogramok telepítése Linux rendszeren

Egy egyszerű teszt elvégzéséhez annak ellenőrzésére, hogy a port nyitva van-e vagy sem, a következőket kell végrehajtania.

nc -vz $HOSTNAME $PORT

Vegyünk egy példát a etoppc.com.com 443-as portjának tesztelésére.

[[email protected] ~]# nc -vz etoppc.com.com 443
Ncat: 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.
[[email protected]ekflare-lab ~]#

Amint már említettük, az nc-t is használhatja a kapcsolat összekapcsolására egy adott porton való figyeléshez. Ez akkor lehet hasznos, ha nem futnak ténylegesen szolgáltatásai, de biztosítani szeretné a csatlakozást.

A hallgatás megkezdéséhez egy porton:

nc -l $PORTNUMBER

A portot egy adott számhoz köti.

Ha az ncat nincs telepítve, akkor a yum install nc segítségével elvégezheti a CentOS/RHEL szervereken.

wget

A wget egy hasznos parancs a HTTP, HTTPS és FTP letöltéséhez/teszteléséhez. Ha webmérnökként dolgozik, vagy gyakran foglalkozik webes problémákkal, akkor a wget a barátja. A wget használatával történő tesztelés egyszerű.

wget $URL

Íme egy példa az tools.etoppc.com.com tesztelésére

[[email protected] ~]# wget tools.etoppc.com.com
--2019-05-09 20:40:01--  http://tools.etoppc.com.com/
Resolving tools.etoppc.com.com (tools.etoppc.com.com)... 104.25.134.107, 104.25.133.107, 2606:4700:20::6819:866b, ...
Connecting to tools.etoppc.com.com (tools.etoppc.com.com)|104.25.134.107|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://tools.etoppc.com.com/ [following]
--2019-05-09 20:40:01--  https://tools.etoppc.com.com/
Connecting to tools.etoppc.com.com (tools.etoppc.com.com)|104.25.134.107|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
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 [15139]

[[email protected] ~]#

Ha azt jelzi, hogy csatlakoztatva van, az azt jelenti, hogy nincs kapcsolati probléma.

  A Linux terminál testreszabása

Nézze meg ezt a gyakran használt wget parancs példáinak megtekintéséhez.

becsavar

A göndör többcélú eszköz.

Tudod, hogy curl segítségével telnetezhetsz egy portot?

Nos, most már tudod.

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

A következő egy működő példa.

[[email protected] ~]# 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)

És ha nincs figyelési port vagy tűzfal probléma, akkor látni fogja, hogy megpróbálja…

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

A curl segítségével is letöltheti az adatokat. Több protokollt támogat – HTTP, HTTPS, FTP, IMAP, LDAP, POP3, SCP, SFTP, GOPHER stb.

nmap

Népszerű eszköz több száz funkcióval. Ezt gyakran biztonsági eszköznek tekintik, nmap lehetővé teszi egyetlen IP/port vagy a tartományon belüli tesztelését.

Egyetlen port teszteléséhez

nmap -p $PORT $IP

Példa a siterelic.com 443-as portjának tesztelésére

[[email protected] ~]# nmap -p 443 siterelic.com
Starting Nmap 7.70 ( https://nmap.org ) at 2019-05-10 06:55 UTC
Nmap 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:af32

PORT    STATE SERVICE
443/tcp open  https

Nmap done: 1 IP address (1 host up) scanned in 0.13 seconds
[[email protected] ~]#

Nézd meg az állapotoszlopot. Ha a nyitott üzenetet látja, az azt jelenti, hogy a kapcsolat rendben van. És ha az állapot szűrve van, az azt jelenti, hogy nem létezik kapcsolat.

  6 további KDE Plasma 5 widget Linux asztali számítógépéhez

Ping

Az egyik széles körben használt parancs annak ellenőrzése, hogy egy távoli gazdagép válaszol-e az ICMP ECHO_REQUEST-re vagy sem. Ne feledje, hogy ez nem biztos, hogy pontos eredményt ad, ha az ICMP le van tiltva a távoli hálózat tűzfalánál. Feltéve, hogy ez nem így van, az alábbiak szerint pingelhet az IPv4 vagy IPv4 hálózati végpontra.

ping $ipaddress
ping $url

Például a etoppc.com.com siker eredménye

[email protected] ~ % ping etoppc.com.com
PING etoppc.com.com (104.27.119.115): 56 data bytes
64 bytes from 104.27.119.115: icmp_seq=0 ttl=53 time=7.944 ms
64 bytes from 104.27.119.115: icmp_seq=1 ttl=53 time=8.870 ms

Például a belső IP meghibásodása.

[email protected] ~ % ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1

Ha a végpont támogatja az IPv6-ot, használhatja a ping6 parancsot az alábbiak szerint.

[email protected] ~ % ping6 etoppc.com.com
PING6(56=40+8+8 bytes) 2a01:4b00:88e4:8700:d8ca:bf50:159c:2a1d --> 2606:4700:20::681b:7673
16 bytes from 2606:4700:20::681b:7673, icmp_seq=0 hlim=250 time=8.650 ms
16 bytes from 2606:4700:20::681b:7673, icmp_seq=1 hlim=250 time=8.738 ms

Ha távoli pingelésre van szüksége az interneten keresztül, használhatja az online ping eszközt.

Következtetés

A telnet fokozatosan megszűnik a legújabb Linux-verzióban. Köszönhetően a fenti telnet alternatívának.

Ha még nem ismeri a Linuxot, és szeretne tanulni, nézze meg ezt Udemy tanfolyam.