ネットワークのトラブルシューティングで使うコマンド
前回、パケットキャプチャのキャプチャフィルタについて説明しましたが、そこに関連してネットワークのトラブルシューティングに使う初歩的なコマンドを整理したいと思います。
IPアドレス関連
まずは自身のIPアドレスおよびネットワークの情報を見れるようにしましょう。
Windowsの場合は「ipconfig」で確認できます。
ipconfig
情報が不足する可能性もあるので、「/all」オプションで完全な出力をさせることができることも覚えておきましょう。
ipconfig /all
Linuxの場合は以下になります。
やや古いディストリビューションの場合
ifconfig
最近のディストリビューションの場合
ip addr
ホスト名の名称解決
次に通信先のホスト名をIPアドレスに変換できるか確認します。
nslookup コマンドでDNSサーバと通信してホスト名をIPアドレスに変換できるか確認します。
これはWindowsもLinuxも同じコマンドになります。
nslookup
上記を入力すると、nslookupのプロンプトに入るので、DNSサーバの設定を確認しましょう。
server
このサーバコマンドですが、DNSサーバ設定の確認だけでなく、変更にも使えます。
server
server <DNSサーバのIPアドレス>
サーバの確認が終わったら、<対象サーバのFQDN>をそのまま入力することでDNSサーバに問い合わせを行います。
<対象サーバのFQDN>
確認が終わったら
exit
nslookupのプロンプトをで抜けましょう。
DNSサーバで通信先のホスト名をIPアドレスに変換できない場合は自身が持っているホスト名とIPアドレスの紐づけの情報を確認します。
Windowsについては、残念ながらコマンドで確認する方法はないので、C:\Windows\System32\drivers\etc にあるhostsファイルを確認してください。
Linuxについては、やはりファイルを確認するのですが、こちらはコマンドだけでファイルの中身を確認することが可能です。
cat /etc/hosts
通信経路の確認
tracerouteという手法を使います。
tracerouteのコマンドとしては、Windowsだと tracert になります。
tracert <ホスト名orIPアドレス>
コマンドとしては上記になるのですが、tracertは特定したIPアドレスのホスト名を確認しようとするという動作をするので、DNSの応答時間が発生します。
この動作は「-d」オプションでカットできるので、オプション付きでの実行をお勧めします。
tracert -d <ホスト名orIPアドレス>
また、Linuxだとそのまま traceroute というコマンドがあります。
ただしLinuxの場合は事前に traceroute が導入されていない場合がありますので、確認したうえで可能な限り導入しておきましょう。
traceroute <ホスト名orIPアドレス>
linuxの場合、Windowsの「-d」オプションに該当するオプションは「-n」オプションになります。
traceroute -n <ホスト名orIPアドレス>
ルーティングの確認
これができるようになるとある程度ネットワークがわかる人になってくるかと思います。
Windowsの場合は以下でしゅつりょくできます。
route print
Linuxの場合は以下になります。
やや古いディストリビューションの場合
netstat -r
最近のディストリビューションの場合
ip route
ここまでできるようになれば、次はパケットキャプチャの取得方法の際にアタリを付けられるようになるかなと思います。