ネットワーク接続をテストする 5 つの Linux ユーティリティ

2 つのネットワーク エンドポイント間の接続をチェックする方法をお探しですか。

システム管理者の一般的なタスクの 1 つに、ネットワーク問題のトラブルシューティングのために接続をチェックすることが挙げられます。 アプリケーションがバックエンド サービスに接続できない、外部 URL からデータを取得できない、フローが開かれているかどうかを確認するなど、あらゆる可能性があります。 これらは CentOS 7.x でテストされており、他の Linux ディストリビューションで動作しない理由はないと思います。

Let’s explore…

telnet

サーバー間の必須接続、サーバーと別のネットワーク デバイスの IP をテストするために広く使用されているコマンドの 1 つ。 コマンドの構文は簡単です。

telnet $destinationIP $PORT

10.0.0.1 IP アドレスのポート 8080 に接続できるかどうかをテストする場合を考えてみましょう。

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

注意: telnet を実行中にコマンドが見つからない場合、ここで説明したように telnet をインストールする必要があります。

ncat or nc

Ncat (別名 nc) は、接続の確立と承認、リモートでのコマンド実行、データの書き込みと読み込みなど多くの機能を持つ強力なネットワーク ユーティリティです。

nc -vz $HOSTNAME $PORT

ポートが開いているかどうかを確認する簡単なテストを行うには、以下を実行します。

# 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.#

前述のように、ncを使って特定のポートで待ち受けるように接続をバインドすることも可能です。 これは、実際のサービスを実行していないが、接続が存在することを確認したい場合に便利です。

To start listening on a port:

nc -l $PORTNUMBER

It will bind the port on a given number.これは、指定された番号のポートをリッスンするために使用します。

ncatがインストールされていない場合、CentOS/RHELサーバーではyum install ncで完了します。

wget

wgetはHTTP、HTTPS、FTPのダウンロード/テストに役立つコマンドです。 もしあなたがウェブエンジニアとして働いていたり、ウェブに関連する問題に頻繁に対処しているなら、wgetはあなたの味方です。

wget $URL

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 #

接続されていると表示されたら、接続の問題がないことを意味します。

curl

curlは多目的なツールです。

Well, now you know.

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

以下は動作例です。

# 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)

そして、リスニングポートやファイアーウォールの問題がない場合、試して見る…

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

データをダウンロードするためにも、curlを使うことができます。 HTTP、HTTPS、FTP、IMAP、LDAP、POP3、SCP、SFTP、GOPHERなど複数のプロトコルをサポートしています。

nmap

数百の機能を持つ人気のあるツールです。 nmapは、単一のIP/ポート、または範囲をテストすることができます。

単一のポートをテストするには

nmap -p $PORT $IP

siterelic.comのポート443をテストする例

# 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#

状態の列を見てみてください。 もし、openと表示されたら、接続がOKであることを意味します。

Conclusion

telnet は最新の Linux バージョンでは廃止されつつあります。 上記の telnet の代替手段に感謝します。

もしあなたが Linux に慣れておらず、学びたいと思っているなら、この Udemy コースをチェックしてください。

コメントを残す

メールアドレスが公開されることはありません。