コマンドプロンプトを立ちあげ障害を追っていく先輩に憧れて
Advertisements
PCを使う仕事をしている限り、ネットワークの問題は切り離せない。
それは個人の問題であれ、システムの問題であれ、常日頃何かが起こり、そして原因を追跡しなれけばならない。
スリーウェイハンドシェイクという言葉すら知らなかった新人時代、問題が起きたら即時にteratermを立ちあげ、問題点を追跡していく先輩はさながら探偵のようにも見えた。
意味がわからないものは神々しく見えるものなのだ。そんなに難しいことをしていたわけではないのに。
以下、コマンドプロンプトでネットワーク系のコマンドを思うがままにまとめていく。
詳しく学びたい人は、文末に載せたリンクの書籍を読んでほしい。
■例えば迷惑メールが届いて、その迷惑メールの送り手が使っているISPまでをなんとか調べたいとき。
①nslookupを使って、メールを送ってきたメールサーバを調べる。
C:\temp>nslookup DNS request timed out. timeout was 2 seconds. 既定のサーバー: UnKnown Address: 192.168.1.1 > set type=MX > > pinky-pin.XX ←迷惑メールの@以下 サーバー: UnKnown Address: 192.168.1.1 権限のない回答: pinky-pin.jp MX preference = 10, mail exchanger = smtp.pinky-pin.jp pinky-pin.jp nameserver = ns5.vnstg.net pinky-pin.jp nameserver = ns2.vnstg.net pinky-pin.jp nameserver = ns4.vnstg.net smtp.pinky-XXX.jp internet address = 202.251.XXX.XX(ここにIPアドレスが表示される)
②whois sourceというwebサイトに上記で取得したIPアドレスを入力すると、このIPアドレスを割り振っているISPが表示される。
http://www.whois.sc/
■DNSキャッシュを確認する
C:\temp>ipconfig /displaydns Windows IP 構成 vivi.dyndns.org ---------------------------------------- レコード名 . . . . . : vivi.dyndns.org レコードの種類 . . . : 1 Time To Live . . . .: 13 データの長さ . . . . : 4 セクション . . . . . . . : 回答 A (ホスト) レコード. . . : 220.157.170.199
■nslookupコマンドを使ってfacebook.comのIPアドレスを確認する
C:\temp>nslookup DNS request timed out. timeout was 2 seconds. 既定のサーバー: UnKnown Address: 192.168.1.1 > facebook.com サーバー: UnKnown Address: 192.168.1.1 権限のない回答: 名前: facebook.com Addresses: 2a03:2880:10:1f02:face:b00c:0:25 2a03:2880:10:8f01:face:b00c:0:25 2a03:2880:2110:3f01:face:b00c:: 66.220.149.11 66.220.158.11 69.171.224.37 69.171.229.11 69.171.242.11
nslookupはDNSサーバへのIPアドレスを問い合わせを手動で実行することができる。
facebook.comに対応するIPアドレスは5つあって、IPアドレスを複数登録することで負荷分散を行なっていることがわかる。
■IPアドレスがわかってもホスト名がわからないとき
C:\temp>nslookup DNS request timed out. timeout was 2 seconds. 既定のサーバー: UnKnown Address: 192.168.1.1 > 69.171.242.11 サーバー: UnKnown Address: 192.168.1.1 名前: www-10-02-ash3.facebook.com Address: 69.171.242.11
「>IPアドレス」でPTRレコードの問い合わせを行うことができる。
■ポート番号について
ポート番号は、PCやサーバ上で稼働しているアプリケーションを識別するための情報。
「8081番ポートで起動しているjboss」,「8082ポートで起動しているjboss」などと、
同じサーバの中で入り口を分けて使用することがある。
ウェルノウンポート(0~1023)
登録済みポート(1024~49151)
■ポート番号を確認するコマンド
netstat -n
C:\temp>netstat -n アクティブな接続 プロトコル ローカル アドレス 外部アドレス 状態 TCP 127.0.0.1:49453 127.0.0.1:6999 TIME_WAIT TCP 127.0.0.1:49511 127.0.0.1:49512 ESTABLISHED TCP 127.0.0.1:49512 127.0.0.1:49511 ESTABLISHED
■TCP/IPの設定を確認する
C:\temp>ipconfig /all
■IPアドレスを解放する
C:\temp>ipconfig /release
■IPアドレスを再取得する
C:\temp>ipconfig /renew
■デフォルトゲートウェイとは、同じネットワーク内のルータのこと
■DHCPサーバがクライアントにIPアドレスを割り当てる仕組み
①DHCPDISCOVER:問い合わせブロードキャストしてDHCPサーバを探しだす。
②DHCPOFFER:DHCPDISCOVERを受け取ったDHCPサーバが、使えるアドレスを選択してDHCPOFFERをクライアントに返す
③DHCPREQUEST:クライアントがDHCPOFFERを受け取ると、DHCPREQUESTをブロードキャストしてIPアドレスを要求する。
■ブロードキャストはルータを超えられない
→でも一つのネットワークに1台のDHCPサーバを置くのは非効率。
→DHCPリレーエージェントという機能を使って、複数のネットワークのDHCPクライアントに対してIPアドレスを配布する仕組み。
→ブロードキャストされたDHCPDISCOVERをユニキャストに変換してDHCPサーバに転送している。
■IPアドレスまたはホスト名への通信経路を確認する
C:\temp>tracert www.facebook.com
④DHCPACK:DHCPサーバが要求されたIPアドレスの使用を了承する。
■もっとわかりやすく勉強したいとき・・・