networksetup(MacのNWハードウェアを一覧表示)
①まずnetworksetupコマンドでMacのNWハードウェアを一覧表示する。
Deviceの値がifconfigのNWインターフェース名と一致する。
enはイーサネットの事。(詳細は後述
ifconfig(割り当てられたIPを調べる)
→よくipconfigと間違える。UNIX系は主にifconfigでIPアドレスを調べる。
②続いて、ifconfigにて割り当てられたIPを調べる。
表示された各インターフェースの名前と役割
lo0(ループバック)
NWのテストに使用する為に用意された仮想インターフェース
inetの127.0.0.1がIPアドレスとして自動で割り当てられる。
gif0(generic tunnel interface)
IPv6/IPv4トンネリングを行うときに使うインターフェース
IPv6/IPv4トンネリングとは:IPv4(またはIPv6)をサポートするネットワークに、IPv6(またはIPv4)のパケットをルーティング(送受信)する仕組み
stf0(6to4 tunnel interface)
gif(4→6)の逆(6→4)バージョン
gifがIPv6パケットをIPv4パケットにカプセル化でき、その逆も可能であるのに対し、これはIPv6パケットをIPv4ネットワークにルーティングするためのインターフェース。
en0(Ethernet 0,1,2~....)
0や1の番号は認識した順に割り振られる。自分のlaptopのIPアドレスやMACアドレスはこのインターフェースに書かれている。
macのシステム環境設定からも確認ができる
※その他
enとetの違い
→どちらもインターフェースだが規格が違う
Ethernet Ⅱをen、IEEE802.3をetと命名
一般的にイーサネットといえば、Ethernet Ⅱを指す
それぞれ違いはパケット構造
NWの経路情報
ここまで手に入れた情報
・HW名とそのIPアドレス
続いてはネットワークの経路情報について調べる
例えば、vmを立ててMacから接続できない場合に、どのような経路で通信を行っているのかを調べるために使用する。
traceroute IPアドレス [orホスト名]
便利なオプションとして「-n」があり、IPアドレスをする際にアドレスからDNSでホスト名を解決しないことで、DNSのタイムアウト待ちで動作が遅くなることを防ぐ。
netstat(PCの通信状況を一覧表示)
オプション無しで実行すると、アクティブになっているコネクションを全て表示する。
通信相手のPCはホスト名で表示され、プロトコルも主要なものはプロトコル名で表示される
443番ポート→「https」という形で
早く表示させたい場合は「-n」オプションをつけることでDNS処理を無くす事ができる。
用途例:ネットワークが遅くなった問題
TCPのコネクション数を調べた所
→色々な通信が走っているのでは?
調査
netstatで使っているポートからプロセスを調べる
まずはnetstatでローカルアドレスのポートを調べる。
そして、lsofを使用しどのプロセスかを特定する。というもの
netstat -p tcp
TCPでの通信を調べる
55466というポートが分かり、lsofで調べる
lsof:
こうしてTweetDeckのプロセスが割り出せた。
→調査の結果、avastの挙動がおかしくなり大量にコネクションを貼っていた事が判明(ウイルスソフト)