Windowsサーバーで状態を確認するときに使う主なネットワークコマンドです。
手持ちのメモに書いてたのを、スマホでみたいので、ブログに書いてます。
目次
- ポートの使用状況を調べる
- PIDからプロセス名を取得する
- 自分のPCのアドレス情報などを調べる
- ネットワークの接続確認をする
- FQDN名とIPアドレスを相互に取得・確認する
- 指定した宛先まで経由したホストを調べる
- MACアドレスを調べる
- ルーティングテーブルを確認する
- IPV4とIPV6の優先度の確認と変更
ポートの使用状況を調べる
サービスを開始しようとしてエラーになるときなどで、ポートがすでに使われていないかを調べるときに、findコマンドと組み合わせて使います。。
例 ポート80が使われているか調べる
netstat -nao | find ":80"
オプションの意味
- -n IPアドレスやポート番号を数値で表示
- -a LISTENING状態のTCPポートも表示する
- -o そのコネクションを所有しているプロセスのID(PID)を表示する
- -b PIDではなく実際のプロセス名を表示する(管理者権限が必要)。
netstatはすべてを出力するので、findをパイプ(|)でつないで、":80"が含まれている行だけを表示してます。
findは「指定文字列を含む行を抽出するコマンド(正規表現不可)」です。
主なオプションは
- /V 指定した文字列を含まない行をすべて表示する
- /C 指定した文字列を含む行の数だけを表示する
- /N 行番号を表示する
- /I 大文字と小文字の区別をしないで検索する
正規表現を使いたいときは、findstr を使えますが・・まあ、必要ないかも。
念のため、findstrの主なオプションです。
- /V 指定した文字列を含まない行をすべて表示する
- /I 大文字と小文字の区別をしないで検索する
- /N 行番号を表示する
- /B 行の先頭にあるパターンを検索する
- /E 行の末尾にあるパターンを検索する
- /L 検索文字列をリテラルとして使用する
- /R 検索文字列を正規表現として使用する
- /X 完全に一致する行を出力する
PIDからプロセス名を取得する
netstat -naoでPIDを出力させたとき、PIDからプロセス名を取得したいときに、findと組み合わせて使います。
例 PIDが1408であるプロセス名を調べる
tasklist | find "1408"
netstatの -bでプロセス名を表示させられるのですが、管理者権限が必要で面倒なので、-oでPIDを出力して、tasklistでプロセス名を調べる方が多いです。
自分のPCのアドレス情報などを調べる
自分のPCのIPアドレスとかを調べます。
オプションもなんもなく「ipconfig」たたくだけ。
やたらと使います。
ネットワークの接続確認をする
ネットワーク接続確認をします・・もう少し正確にいうなら。
ICMPプロトコルのEcho要求を送信し、指定したあて先への到達可能性を調査します。
例
主なオプション
- -t Ctrl+C を押すまで繰り返し実行する
サーバーの再起動をリモートでやった時に、立ち上がって、ログイン可能になるタイミングをはかるために、-t オプションをつけて実行して、監視してる・・って感じでよく使います。
FQDN名とIPアドレスを相互に取得・確認する
FQDN名(ホスト名+ドメイン名)に対応付けられているIPアドレスを相互に取得・確認します。
例
nslookup www.yahoo.co.jp
そんなに使わないですけど。
インターネットのサイトがIPV6対応してるかどうか?を調べる 時には役にたちました。
指定した宛先まで経由したホストを調べる
ICMPプロトコルのEcho要求を送信し、指定したあて先への到達可能性を調査するという点ではpingと同じですけど、ルーティングの途中で経由したホスト(ルータ)を逐一表示してくれます。
接続に問題がでたとき、経路の途中で途絶えているのか、途中で混雑して遅延しているだけなのか・・みたいな切り分けをするのに、よく使います。
Linuxだと、名前が「traceroute」なので、よく間違えます(笑)
例
tracert web.exsample.local
または
tracert 192.168.64.255
こんな感じで結果が表示されます。
web.exsample.local [192.168.64.255] へのルートをトレースしています
経由するホップ数は最大 30 です:1 <1 ms <1 ms <1 ms sample-vpn.gifusi.exsample.co.jp [192.168.3.253]
2 9 ms 8 ms 9 ms 192.168.65.30
3 9 ms 8 ms 8 ms web.exsample.local [192.168.64.255]
トレースを完了しました。
MACアドレスを調べる
MACアドレス(00-FE-4C-8F-EF-59 みたいなやつ)を調べます。
例
getmac /v
滅多に使いません。
でも、アクセスできる端末をIPアドレスでなく、MACアドレスで識別するセキュリティを採用しているものがあるので、ごくたまに確認されることがあるくらいです。
MACアドレスは物理アドレスですが、最近は仮想マシンなどでMACアドレスに任意の値を使用できたりするものもあるので、もう過去のものになりつつありますけど。
ルーティングテーブルを確認する
最後におまけです。
ルーティングテーブルを確認します。
どうも、ルーティングテーブルの情報をくれと、何かの拍子にシステム管理担当者から言われることがあるかもしれないと思ってメモしているようですけど、おそらく、使うことはない・・んじゃないかなと思ったりしています。。
IPV4とIPV6の優先度の確認と変更
確認は。
netsh interface ipv6 show prefixpolicies
です。
管理者権限でCMDを開いて実行する必要があります。
結果の見方とか変更の仕方とかの詳しいところは、こちらのサイトで上手にまとめていただいているのでコピペしないで、リンクをはっておきます。
ではでは。
#WIN