第13回プレゼン資料

TCP/IPネットワーク構築と管理
1
ネットワーク構築の流れ
• IPアドレスの取得
•
•
•
•
•
ドメイン名の取得
ネットワークの設計と実装
ネットワーク機器の設定
ネームサーバの設置
各種サーバの設置
2
IPアドレス割当の実際
• プロバイダから必要なIPアドレスを取得
– 必要なIPアドレスをプロバイダに申請
– プロバイダはCIDRブロックから割当
• JPNICから直接割り当ててもらう
– IPアドレス管理指定事業者になる必要あり
– この場合は、「割り振り」という用語が用いられる
• 手数料:1件につき4500円
– プロバイダが代理で徴収することもあり
– 代行手数料を取られることもあり
3
ドメイン名の申請
• 基本的に早い者勝ち
– ドメイン名に関する紛争を調停する組織あり
• 利用されていないかどうかを調べる
[方法1] whoisコマンドを利用して調べる
[方法2] JPNICのウェブで調べる
http://www.nic.ad.jp/cgi-bin/whois_gw
• 直接申請と代理申請
4
直接申請
① 登録手数料:2万円を振り込む
② 電子メールで登録依頼
③ JPNICからの登録受理連絡
④ 必要書類を郵送
⑤ 登録承認の連絡受理
⑥ ドメイン登録情報の公開と
ネームサーバの設定
5
代理申請
① 代理申請依頼を出す
仲介業者が作業を行う
登録手数料と
申請手数料が発生
② ドメイン登録情報の公開と
ネームサーバの設定
6
汎用JPドメイン名
• 接続承認を廃止した新しいドメイン登録
• JPNICが行っていた登録受付を委託
– JPRS(JaPan Registry Service)
– JPRS認定の指定事業者が作業を行う
– 手数料や維持費は事業者ごとに異なる
http://jprs.jp/dotjp/faq.html
7
日本語ドメイン名
• ドメイン名の国際化
– まだ実験的な意味合いが強い
将来的に使えるかもしれない
使えないかもしれない
• 基本的に早い者勝ち
– おさえておくと良いかも…
8
さて、TCP/IPシステム設定
- Unixシステムの設定(1) ネットワークサービスの概要
(2) 基本設定
(3) インターフェースの設定
(4) ルーティングの設定
(5) DNSサーバの設定
(6) ネットワークサーバの設定
(7) WWWサーバの設定
(8) セキュリティー 機能の設定
9
ネットワークサービスに必要な
環境設定
•
•
•
•
•
•
NameとIP Addressの設定 ; ifconfig
NameとIP AddressのDNSサーバへの登録
Host Table (/etc/hosts)
DNSサービス(/etc/resolv.conf); named
メールサービス ; sendmail
DHCPサービス ; dhcpc, dhcpd
• ファイルサービス
• プリントサービス ; lp,lpd
10
ネットワークサービスに必要な
環境設定
•
•
•
•
•
•
•
•
Hostname
IP address
Subnetmask
Default gateway
Broadcast address
Domain name
Name servers
Routing protocol
•
•
•
•
Mail server
Mail relay
Print server
File server
11
TCP/IPシステム設定
(1) ネットワークサービスの概要
(2) 基本設定
(3) インターフェースの設定
(4) ルーティングの設定
(5) DNSサーバの設定
(6) ネットワークサーバの設定
(7) WWWサーバの設定
(8) セキュリティー 機能の設定
12
カーネルの再構築
・ kernel configuration fileの編集
例; BSD UNIX kernel
/usr/src/sys/i386/conf/GENERIC
# config GENERIC
# cd /usr/src/sys/compile/GENERIC
# make depend
# make
# make install
13
TCP/IPシステム設定
(1) ネットワークサービスの概要
(2) 基本設定
(3) インターフェースの設定
(4) ルーティングの設定
(5) DNSサーバの設定
(6) ネットワークサーバの設定
(7) WWWサーバの設定
(8) セキュリティー 機能の設定
14
Interface Configuration
ifconfig interface-name IP-address netmask
ex. ifconfig le0 172.16.12.123 netmask
255.255.255.0
(1) interface-name
(2) IP-Address
(3) netmask
(4) Broadcast Address
15
Interface Configuration
• 指定したインターフェイスの設定確認
% ifconfig le0
le0:
flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST>
mtu 1500
inet 172.16.12.2 netmask ffff0000 broadcast
172.16.255.255
• すべてのインターフェイスの設定確認
% ifconfig -a
16
Interface Configuration
・ コンフィギュレーションの確認 ; netstat -i
- Name ; interface name
- Mtu ; link MTU size
- Net/Dest ; Network Address
(注) p2pリンクでは自分自身のIPアドレス
- Address ; assigned IP address
- Ipkts ; received packets
- Ierrs ; error packets to be received
- Opkts ; output packets
- Oerrs ; error packets to be sent
- Collis ; Ethernet collision
- Queue ; 送信待ちのパケット数
17
Interface Configuration
% netstat -ni
Name
le0
lo0
ppp0
Mtu
1500
1536
1006
Net/Dest
172.16.0.0
127.0.0.0
172.16.15.26
Address
172.16.12.2
172.0.0.1
172.16.15.3
Ipkts
1547
133
112
Ierrs
1
0
0
Opkts
1126
133
112
Oerrs
0
0
0
Collis
135
0
0
18
Queue
0
0
0
TCP/IPシステム設定
(1) ネットワークサービスの概要
(2) 基本設定
(3) インターフェースの設定
(4) ルーティングの設定
(5) DNSサーバの設定
(6) ネットワークサーバの設定
(7) WWWサーバの設定
(8)セキュリティー 機能の設定
19
ルーティングの設定
(1) ルーティングなし
→ 自分自身のIPアドレスと Loop-Backア
ドレスのみ。
(2) 静的ルーティング(static routing)
固定的にGateway(router)を指定する
(3) 動的ルーティング(dynamic routing)
動的にGateway(router)を探す
20
IGPとEGP
ルータ
ルータ
ルータ
ルータ
Routing Domain間で経路
お互いの持つ経路を交換
するプロトコルをEGPと呼ぶ
ルータ
ルータ
ルータ
ルータ
Routing Domain - A
同一Routing Domain内の
経路を制御するプロトコル
をIGPと呼ぶ
Routing Domain - B
• IGP = Interior Gateway Protocol
• EGP = Exterior Gateway Protocol
Border Router
ルータ
ルータ
ルータ
ルータ
Routing Domain - C
21
経路制御ソフトのインストールと起動
• Zebra
– http://www.zebra.org/
– ソースをダウンロードしコンパイル
• FreeBSD/NetBSD
– ports/packageからインストール
• zebrad, ripngd, ospf6dの起動
• 設定はCisco ライク
22
TCP/IPシステム設定
(1) ネットワークサービスの概要
(2) 基本設定
(3) インターフェースの設定
(4) ルーティングの設定
(5) DNSサーバの設定
(6) ネットワークサーバの設定
(7) WWWサーバの設定
(8)セキュリティー 機能の設定
23
DNS named configuration files
・ /etc/named.boot ; domain DBなどの情報
・ /etc/named.ca ; root name server情報
(/etc/named.root, /etc/root.ca)
・ /etc/named.local ; 自分自身のname/domain情報
・ /etc/named.hosts ; zone file (正引き)
・ /etc/named.rev ; zone file (逆引き)
24
TCP/IPシステム設定
(1) ネットワークサービスの概要
(2) 基本設定
(3) インターフェースの設定
(4) ルーティングの設定
(5) DNSサーバの設定
(6) ネットワークサーバの設定
(i) DHCP
(ii) Mail
(iii) FTP
(iv) SAMBA
(7) WWWサーバの設定
(8)セキュリティー 機能の設定
25
DHCPとは
• 基本はアドレスの自動割り当て方法
• アドレス割り当ての他に、DNSサーバのア
ドレス等の情報を配る
• DHCPサーバは、ホスト(クライアント)にア
ドレスを割り当てる
• アドレスの節約
• セキュリティー対策としてのアドレス変更
• サーバには、同じアドレスも割り当てられる
26
TCP/IPシステム設定
(1) ネットワークサービスの概要
(2) 基本設定
(3) インターフェースの設定
(4) ルーティングの設定
(5) DNSサーバの設定
(6) ネットワークサーバの設定
(i) DHCP
(ii) Mail
(iii) FTP
(iv) SAMBA
(7) セキュリティー 機能の設定
(8) WWWサーバの設定
27
メイルサービス
• メイルの送信・受信
– SMTP (Sendmail etc.)
• メイルサーバからクライアントへの送信
– POP
– IMAP
28
メイルサービス
SMTP
サーバ
SMTP
サーバ
POP/IMAP
ホスト
29
・ sendmailの取得
sendmail
- http://www.sendmail.org/
・sendmailのインストール
# gzip -d sendmail.8.8.8.tar.gz
# tar -xvf sendmail.8.8.8.tar
# cd sendmail-8.8.8
# sh makesendmail
Configuration: os=Linux, rel=2.0.30, rbase=2, rroot=2.0,
arch=i486, sfx=
Creating obj.inux.2.0.30.i486 using makefile.Linux
(省略)
groff -Tascii -mandoc sendmail.8 > sendmail.0
# cd obj.linux.2.0.30.i486
# mkdir /var/spool/mqueue
# chmod 700 /var/spool/mqueue
#./makesendmail install
# kill -HUP ‘head -1 /var/run/sendmail.pid’
30
sendmail設定ファイルの作成
• sendmailの設定ファイル(sendmail.cf)を人
手で書くのは大変
• sendmail.cfを生成するツールを使う
– cf : sendmailに付属
– CF : ftp://ftp.kyoto.wide.ad.jp/pub/mail/CF/
31
Mail Service
- POP/IMAP ・ /etc/inetd.conf
pop3 stream tcp nowait root /etc/pop3d
imap stream tcp nowait root /usr/sbin/imapd
pop3d
imapd
・ /etc/services
pop3
imap
110/tcp
143/tcp
# Post Office Version 3
# IMAP version 4
32
TCP/IPシステム設定
(1) ネットワークサービスの概要
(2) 基本設定
(3) インターフェースの設定
(4) ルーティングの設定
(5) DNSサーバの設定
(6) ネットワークサーバの設定
(i) DHCP
(ii) Mail
(iii) FTP
(iv) SAMBA
(7) セキュリティー 機能の設定
(8) WWWサーバの設定
33
FTPサービス
・ FTPサービス
(i) anonymous
(ii) user oriented
・ TCP Port Number = 21
・ /etc/inetd.config
ftp
stream
tcp
nowait
root
/usr/etc/ftpd
ftpd -X
(*) -X
-l ; ログを行う
-d ; syslogにログを書きこむ
-t seconds ; 休止期間を秒で設定
-T seconds ; ftpクライアントの休止時間
-u permission ; UNIXファイルの属性。 Defaultは“022”
34
TCP/IPシステム設定
(1) ネットワークサービスの概要
(2) 基本設定
(3) インターフェースの設定
(4) ルーティングの設定
(5) DNSサーバの設定
(6) ネットワークサーバの設定
(i) DHCP
(ii) Mail
(iii) FTP
(iv) SAMBA
(7) WWWサーバの設定
(8)セキュリティー 機能の設定
35
TCP/IPシステム設定
(1) ネットワークサービスの概要
(2) 基本設定
(3) インターフェースの設定
(4) ルーティングの設定
(5) DNSサーバの設定
(6) ネットワークサーバの設定
(7) WWWサーバの設定
(8)セキュリティー 機能の設定
36
WWWサーバ
• WWW(World-wide Web)
• HTTP(Hyper Text Transfer Protocol)
• apacheによるWWWサーバの構築
http://www.apache.org/
• 設定ファイル
– httpd.conf
– srm.conf
– access.conf
37
TCP/IPシステム設定
(1) ネットワークサービスの概要
(2) 基本設定
(3) インターフェースの設定
(4) ルーティングの設定
(5) DNSサーバの設定
(6) ネットワークサーバの設定
(7) WWWサーバの設定
(8)セキュリティー 機能の設定
38
セキュリティインシデントの分類
• システムのサービス・弱点の探査
– ポートスキャン、プローブ
• システムへの侵入
– パスワード推測・破り、パケット盗聴、バッファあふれの利用
• 踏み台・中継に利用
– 電子メールやネットワークニュースの不正中継
– Webプロキシー悪用、匿名FTP悪用、パケットの増幅(smurfing)
• 運用妨害・業務妨害
– パケット大量送信、電子メール爆撃、電子メール偽造
– Webチャット潰し、ネットワークニュースのコントロールメッセージ
39
狙われやすいサービス
• Web
– CGI プログラム
– プロキシ不正利用
– ページ書き換え
– 運用妨害
• finger
• telnet
• NFS (statd)
• DNS (named)
• IMAP、POP
•
•
•
•
•
FTP
– ディレクトリ不正使用
電子メール
– 不正中継
ネットワークニュース
– 不正なポスト
– コントロールメッセージ
ルータ
– 侵入、設定変更、踏み台
and more
40
システムへの侵入の典型的手口
① Portscan で(不用意に開いてる)サービスを見つけ
② アプリケーションのセキュリティホールを利用し
(sendmail, INN, phf, imap, pop, statd, named...)
③ 不正なコマンドを実行させてアクセス権限を得たり、
④ /etc/passwd などのファイルを入手し、パスワードクラック
でアカウントを破って
⑤ OSのセキュリティホールをついてroot権限を取り
⑥ 足跡を消したり・バックドアのトロイの木馬をしこんだり
⑦ パケット盗聴プログラムをしかけたりする
⑧ 次のターゲットとなるホストを物色する
41
Buffer Overflow 攻撃の仕組み
• プログラムが(ネットワー
クから)データを読むこむ
ために用意するメモリ領
域 = バッファー
• データのサイズがバッファー
のサイズ以下であること
をチェックしていないと、
バッファーが溢れる
• スタック上に取られたバッ
ファーを溢れさせると、戻
りアドレス等を上書きでき
る
スタックの
成長方向
バッファーサイズを越える
データが送り込まれると
局所変数の
バッファー
戻りアドレス
バッファーが溢れて
戻りアドレスが上書きされる
引数
スタック・セグメント
42
2000/5 LOVE LETTER Virus
• VBS (Visual Basic Script) のスクリプトファイルをメールに
添付
• この添付ファイルをうっかり開くと、VBS のプログラムが
起動する
– 画像・音声の拡張子のファイルをVBSのスクリプトに
置き換える(元のファイルは破壊される)
– Outlook を使っている場合、そのアドレス帳に登録さ
れているアドレスにウィルス付きメールを再送
• 技術的には全然高度なものではない
• 世界中で多大な被害 (推定100億ドルを越える)
43
メールで増殖するウィルスの仕組み
感染被害が拡大する
ウィルス
添付ファイル
付きのメール
添付ファイルを開くことによりプ
ログラム(マクロ、スクリプト)が
実行されて、メールが転送され
44
LOVE LETTER Virus 対策
• 出入り口での対策
– ウィルス対策ゲートウェイは早期に対応
• パターンファイルのアップデートは毎日しましょう
– 特定の Subject を持つメールのフィルタリング
– .VBS 拡張子を持つメールのフィルタリング
• クライアント側での対策
– Virus対策ソフトウェア
– 素性のはっきりしない添付ファイルを開かない
– Microsoft もようやく Outlook のセキュリティを強化
Outlook 2000 (SR1) では、VBS などの添付ファイルは
警告メッセージが表示され、開くことはできない
45
2001/7 “Code Red” Worm
• Windows NT/2000 上の IIS + Index Server
/Services の「Index Server ISAPI エクステン
ションのバッファー・オーバーフロー」の脆弱性を
利用して伝播するワーム
• 複数のバージョンが存在
– オリジナルの “Code Red”
– 一部改変されたその「変種」
– 同一コンセプトで独立に作成された “Code Red II”
• II は特に凶悪で、多大の被害を与えた(ている)
46
Code Red (II) の攻撃リクエスト
•
Code Red
GET /default.ida?NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN%u9090%u685
8%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u
9090%u9090%u8190%u00c3%u0003%u8b00%u531b%u53ff%u0078%u0000%u00=a
•
Code Red II
GET /default.ida?XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX%u9090%u685
8%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u
9090%u9090%u8190%u00c3%u0003%u8b00%u531b%u53ff%u0078%u0000%u00=a
47
Code Red の振る舞い
• Index Server(Services)のバッファーオーバフロー
の脆弱性を攻撃して、サーバーに侵入
• 侵入に成功すると、メモリ上に常駐
– ファイルシステムには書き込みをしないので発
見しづらい、またrebootすると一旦消える
• ランダムなIPアドレスに対しScan、侵入を繰返す
– 乱数の初期値が固定のため、同じIPアドレスに攻撃
が繰り返される傾向あり
• Webページを改竄 (日本語版Windowsでは不発)
48
Code Red (感染期=1日〜19日)
①port 80番に接続し
②IISのbuufer overflowのセキュリティホー
ルを攻撃
③コードを感染させる
"Code Red" Wormの攻撃
IIS
ランダムにターゲットを選んで
攻撃を繰り返し、感染を広げる
IIS
#Software: Microsoft Internet Information Services 5.0
#Version: 1.0
#Date: 2001‑08‑22 05:55:55
#Fields: time c‑ip cs‑method cs‑uri‑stem sc‑status
05:55:55 10.1.1.1 GET /default.ida?XXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXX%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u9090%u
6858%ucbd3%u7801%u9090%u9090%u8190%u00c3%u0003%u8b00%u531b%u53ff
%u0078%u0000%u00=a
IISのbuffer overflow を利用し
て、%u以下のCPUの命令コード
が送り込まれる
IIS
ランダムにターゲットを選んで
攻撃を繰り返し、感染を広げる
IIS
IIS
49
Code Red 感染の分布
50
1) 内部からの脅威
• 典型的に、Worm 等の内部感染の脅威
• どうする?
– 内部をIDS等で監視
• 異常を発見したら、端末を特定し切り離し
– 端末のセキュリティを強化
• サーバーと違い、数が多いのでパッチ適用なども
大変
• ウィルスではやっている
• 集中管理の仕組みが必要
51
資料ソース:
NETWORLD+INTEROP T201 ネットワークセキュリティ技術
大学・研究機関でのセキュリティ
52
大学・研究機関で起りうる問題
• サーバが不正侵入され、データが書き換えられたり破壊
されたりする
• サーバが不正侵入され、外部に対する攻撃の「踏み台」
に使われる
• サーバが SPAM メールの不正な中継に使われる
• 内部の人間が、内部から外部に対して不正行為を行う
• 内部の人間が、内部のサーバ上で不適切な情報発信を
行う
• 内部のネットワークに、権限を持っていない人間がコン
ピュータを接続して悪用する
53
大学・研究機関の特殊条件
•
•
•
•
•
•
•
•
•
•
ポリシーをトップダウンで決めることが困難
サーバは分散(独立)管理されている
サーバが簡単に(安易に)立てられる
内から外へはあまりきつい制限はできない
外部からのアクセスも、ほぼ必須要件
UNIX, Windows, Macintosh … のサポートが必要となる
ユーザの技術レベルに大きな差がある
高速なネットワーク環境
学生はお行儀が良いとは限らない
物理的セキュリティはあまり期待できない
54
大学・研究機関の特殊性(1)
• 現状の把握が困難
– 誰が何のアプリケーションを使っているかわからない
• セキュリティポリシーの策定・合意が困難
– 多くの場合、管理者は権限者ではない
• わがままなユーザ
– 見切り発車すると、クレーム続出
• 既存環境の変更が困難
– 研究室単位にサーバが運用されているため
– 設定・利用の変更の周知徹底が困難
55
大学・研究機関の特殊性(2)
• 「××のアプリケーションが使えなくなった」
– 導入後にいろいろ変更が必要になる場合が多い
• 「内部から外部へは全部通す」設定にしてくれ
– あらゆるアプリケーションに対応できる
魔法のファイアウォールは存在しない
– NAT箱の方が設定は楽なことは多い
• 問題になりやすいアプリケーション
– H.323などマルチメディア系、ICQ、…
• IDS(侵入検知システム)の利用も一案
56
大学・研究機関の特殊性(3)
• 高速なネットワーク環境への対応が求められる
– 〜1Gbps に対応できるファイアウォールやIDSがあるか?
• 外部(インターネット)からのアクセスが必須
• Windows より簡単になった Linux
– 危ないサーバがますます増える
• <情報コンセント>に接続される機器の管理
• ユーザ認証に基づくネットワークへの接続・利用
• 悪いことをする子供の問題、「教育」の必要性
• 危機管理体制
57
インターネットから内部へのアクセス
• リモートログインなら SSH
– UNIXは○, Windows は○、Macintosh が△
• Remote Access VPN (IPsec) は透過的で良いが
– VPN製品 IPsec クライアント
→ Windows は○、Macintosh 対応は少数
– OS の IPsec 標準対応増えてくる
→ 相互接続性はいいま1歩
• メールだけなら
– APOP、SSL-POP/SSL-IMAP
– POP before SMTP
– WebMail の利用も手
58
Troubleshooting & Monitoring
59
Approaching a Problem
TIPS;
- 詳細情報の正確な収集
- 可能なら同じ状態を別なシステムで再現
- どのレベルで障害が発生しているか?
+ 特定のApplication ?
+ 特定のホスト?
+ 特定のネットワークセグメント?
- 先入観を持たない
- 問題の切り分けを順次行う
- テストの記録をきちんと残す
60
Approaching a Problem (続)
TIPS;
- セキュリティー機能(Firewall)が理由かも
しれない. ping, traceroute, ICMP_error
は通らない。
- Error Messageを細かく解析する。
- 障害例を公知にする(e.g., FAQ)
- 障害の原因は極めて単純な場合が多い。
(e.g., cable, plug)
61
Diagnostic Tools
・ ケーブルテスター
・ Lap-Top PCを使った診断
- ifconfig; Interface Configuration
- arp; ARP-table information
- netstat ; routing information
- ping ; reachability/connectivity
- nslookup ; DNS information
- dig ; DNS information
- traceroute ; routing path
- snoop ; packet trace
62
Troubleshooting & Monitoring
(1) Diagnostic Tools
(2) Testing Basic Connectivity
(3) Troubleshooting Network Access
(4) Checking Routing and Name Service
(5) Analyzing Protocol Problem
(6) SNMP; Simple Network Management Protocol
63
Connectivity Check ; ping
・ ping host [packet_size] [count]
- Unknown host ; DNS問題
→ nslookup, dig
- Network unreachable ; Routing Protocol問題
→ traceroute, netstat
- No Answer ; Routing Protocol 問題、Interface問題
→ traceroute, netstat, ifconfig
64
Connectivity Check ; ping
・ ping host [packet_size] [count]
# ping -s ns.uu.net 56
PING ns.uu.net: 56 data
64 bytes from ns.uu.net
64 bytes from ns.uu.net
64 bytes from ns.uu.net
64 bytes from ns.uu.net
64 bytes from ns.uu.net
5
bytes
(137.39.1.3):
(137.39.1.3):
(137.39.1.3):
(137.39.1.3):
(137.39.1.3):
icmp_seq=0.
icmp_seq=1.
icmp_seq=2.
icmp_seq=3.
icmp_seq=4.
Time=32.8
Time=15.3
Time=13.1
Time=32.4
Time=28.1
----ns.uu.net PING Statistic---5 packets transmitted, 5 packets received, 0% packet loss
round-trip (ms) min/avg/max = 13.1/24.3/32.8
65
ms
ms
ms
ms
ms
Troubleshooting & Monitoring
(1) Diagnostic Tools
(2) Testing Basic Connectivity
(3) Troubleshooting Network Access
(4) Checking Routing and Name Service
(5) Analyzing Protocol Problem
(6) SNMP; Simple Network Management Protocol
66
Troubleshooting Network Access
・ ifconfig command
# ifconfig le0
le0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,
MULTICAST> mtu 1500 inet 172.16.55.105 netmask
ffffff00 broadcast 172.16.55.255
・ arp command
# arp -a
Net to Media Table
Device
IP Address
Mask
Flags Phys Addr
------ ------------------ --------------- ----- ----------------le0
peanut.nut.com
255.255.255.255
08:00:20:05:21:33
le0
pecan.nut.com
255.255.255.255
00:00:0c:e0:80:b1
le0
almond.nut.com
255.255.255.255 SP
08:00:20:22:fd:51
le0
BASE-ADDRESS.MCAST.NET 240.0.0.0
SM
01:00:5e:00:00:00
67
Troubleshooting Network Access
・ 例;
IP_Address と MAC_Address のマッピングの
不一致
=> ARPキャッシュ(20分程度)
→ # arp -d host_name
# arp -s host_name MAC_address
68
Troubleshooting Network Access
・ netstat command
# netstar -i
Name Mtu Net/Dest Address Ipkts Ierrs Opkts Oerrs
le0 1500 nuts.com almond
442697 2
633424 2
le0 1536 loopback localhost 53040 0
53040
0
Collis Queue
50679
0
0
0
→ Too many Collisions
→ Dividing Ethernet
(i) Switchの導入
(ii) Routerの導入
69
Troubleshooting & Monitoring
(1) Diagnostic Tools
(2) Testing Basic Connectivity
(3) Troubleshooting Network Access
(4) Checking Routing and Name Service
(5) Analyzing Protocol Problem
(6) SNMP; Simple Network Management Protocol
70
Checking Routing
・ netstat command (-rn option)
% netstat -rn
Routing tables
Destination
127.0.0.1
default
172.16.12.0
172.16.2.0
172.16.1.0
172.16.3.0
Gateway
127.0.0.1
172.16.12.1
172.16.12.2
172.16.12.3
172.16.12.3
172.16.12.3
Flags
UH
UG
U
UG
UG
UG
Refcnt Use
1
766
2
2955
40
11239
4
1179
10
2344
2
1279
% netstat -rn | grep ‘172¥.16¥.1¥.0¥’
172.16.1.0
172.16.12.3 UG
10
2344
Interface
lo0
le0
le0
le0
le0
le0
71
Checking Routing (例)
% ping -s sunsite.une.edu 56 2
(*) sunsite.une.edu=152.2.254.81
PING sunsite.unc.edu: 56 data bytes
sendto: Network is unreachable
ping: wrote sunsite.une.edu 64 chars, ret=-1
sendto: Network is unreachable
ping: wrote sunsite.une.edu 64 chars, ret=-1
----sunsite.une.edu PING Statistics---2 packets transmitted, 0 packet received, 100% packet loss
% netstat -rn | grep ‘152¥.2¥.0¥.0¥’ <= check route for 152.2.0.0
%
(*) no response......
% netstat -rn | grep def
% default
172.16.12.1
UG
0
<= check default route
101277 le0
→ 152.2.0.0は、default router (172.16.12.1)に転送される。
したがって、問題は、(1)default router 以降、あるいは、152.2.0.0に
対する Static あるいは Dynamic routing。
72
Checking Routing (例)
・ Static route
;
route add
% route add 152.2.0.0
・ Dynamic route
;
172.16.12.3
routing process check
% ps ‘cat /etc/gated.pid’
PID TT STAT
TIME COMMAND
27711 ?
S
304:59 gated -tep /etc/log/gated/log
73
Checking Routing; traceroute
・ traceroute command
% traceroute da.internic.net
traceroute to ds.internic.net (198.49.45.10),30 hops max, 40 bytes packtes
1 gw-55.nuts.com (172.16.55.200) 0.95ms 0.91ms 0.91ms
2 172.16.230.254 (172.16.230.254) 1.51ms 1.33ms 1.29ms
3 gw225.nuts.com (172.16.2.252) 4.13ms 1.94ms 2.20ms
4 192.221.253.2 (192.221.253.2) 52.90ms 81.19ms 58.09ms
5 washdc1-br2.bbnplanet.net (4.0.36.17) 6.5ms 5.8ms 5.88ms
6 nyc1-br1.bbnplanet.net (4.0.1.114) 13.24ms 12.71ms 12.96ms
7 nyc1-br2.bbnplanet.net (4.0.1.178) 14.64ms 13.32ms 12.21ms
8 cambridge1-br1.bbnplanet.net (4.0.2.86) 28.84ms 27.78ms 23.56ms
9 cambridge1-crl4.bbnplanet.net (199.94.205.14) 19.9ms 24.7ms 22.3ms
10 attbcstoll.bbnplanet.net (206.34.99.38) 34.31ms 36.63ms 32.32ms
11 ds0.internic.net (198.49.45.10) 33.19ms 33.34ms *
・ 応答なし .....
9
10
*
*
*
*
*
*
・ 経路のループ
6
7
8
9
nyc1-br1.bbnplanet.net
nyc1-br2.bbnplanet.net
nyc1-br1.bbnplanet.net
nyc1-br2.bbnplanet.net
:
(4.0.1.114)
(4.0.1.178)
(4.0.1.114)
(4.0.1.178)
13.24ms 12.71ms 12.96ms
14.64ms 13.32ms 12.21ms
11.21ms 10.81ms 10.96ms
14.14ms 12.32ms 14.23ms
74
Checking Name Service
・ nslookup / dig Command
- Remote domain の Authoritative Server による検索
- Remote host の検索
- Remote zone の検索
% nslookup
Default Server: almond nuts.com
Address: 172.16.12.1
> set type=NS
> foo.edu.
Server: almond.nuts.com
Address: 172.16.12.1
foo.edu
nameserver = gerbil.foo.edu
foo.edu
nameserver = red.big.com
foo.edu
nameserver = shrew.foo.edu
gerbil.foo.edu
inet address = 198.97.99.2
red.big.com
inet address = 184.6.16.2
shrew.foo.edu
inet address = 198.97.99.1
> set type=ANY
> server gerbil.foo.edu
Default Server: gerbil.foo.edu
Address: 198.97.99.2
75
Checking Name Service (続)
> hamster.foo.edu
Server: gerbil.foo.edu
Address: 198.97.99.2
hamster.foo.edu
inet address = 198.97.99.8
> server red.big.com
Default Server: red.big.com
Address: 184.6.16.2
> hamster.foo.edu
Server: red.big.com
Address: 184.6.16.2
*** red.big.com can’t find hamster.foo.edu: Non-existant domain
・ “hamster.foo.edu”(198.97.99.8)
- “gerbil.foo.edu”は解決可能。
- “red.big.com”は解決不可能。 :-(
76
Checking Name Service (続)
> server red.big.com
Default Server: red.big.com
Address: 184.6.16.2
> set type=SOA
> foo.edu
Server: red.big.com
Address: 194.6.16.2
gerbil.foo.eduがマスター
foo.edu
origin = gerbil.foo.edu
mail addr = amanda.gerbil.foo.edu serial=10164, refresh=43200,
retry=3600, expire=3600000, min=2592000
> server gerbil.foo.edu
Default Server: gerbil.foo.edu
Address: 198.97.99.2
> foo.edu
Server: gerbil.foo.edu
Address: 198.97.99.2
foo.edu
Zone-fileのversionは
同じ(同一serial番号)
origin = gerbil.foo.edu
mail addr = amanda.gerbil.foo.edu serial=10164, refresh=43200,
retry=3600, expire=3600000, min=2592000
> exit
77
Troubleshooting & Monitoring
(1) Diagnostic Tools
(2) Testing Basic Connectivity
(3) Troubleshooting Network Access
(4) Checking Routing and Name Service
(5) Analyzing Protocol Problem
→ tcpdump
(6) SNMP; Simple Network Management Protocol
78
tcpdump
・ Van Jacobson, Craig Leres, Steven McCanne
(LBL; Lawrence Berkeley Lab.,UCB)
・ BSD Packet Filter (BPF) を利用している。
・ 詳細は、man tcpdump, man bpf。
(1) Port=25のTCPパケットのDump
% tcpdump tcp port 25
(2) ICMP=0,8(echo request/reply)以外のICMPメッセージのDump
% tcpdump “icmp[0] != 8 icmp[0] != 0’
79
tcpdump Implentation
tcpdump
tcpdump
tcpdump
TCP, UDP
IP, ICMP, IGMP
filter filter filter
copy of received pckts
Device Driver
BPF driver
copy of transmitted pckts
< kernel >
Physical Network
(e.g., Ethernet)
80
1 (0.0
2
3
4
5
6
7
8
9
10
11
12
) solaris.33016 > slip.discard: S 1:1(0) win 8760
<mss 1460> (DF)
(0.1016) slip.discard > solaris.33016: S 1:1(0) ack 1
win 4096 <mss 512>
(0.5290) solaris.33016 > slip.discard: P 1:513(512) ack 1
win 4096 <mss 512>
(0.0038) bsdi > solaris: icmp: slip unreachable - need to frag,
mtu = 296 (DF)
(0.0259) solaris.33016 > slip.discard: F 513:513(0) ack 1
win 9216 (DF)
(0.0923) slip.discard > solaris.33016: . ack 1 win 4096
(0.3577) solaris.33016 > slip.discard: P 1:257(256) ack 1
win 9216 (DF)
(0.3290) slip.doscard > solaris.33016: . ack 257 win 3840
(0.3308) solaris.33016 > slip.discard: FP 257:513(256) ack 1
win 9216 (DF)
(0.3208) slip.discard > solaris.33016: . ack win 3840
(0.0422) slip.discard > solaris.33016: F 1:1(0) ack 514 win4096
(0.1719) slip.discard > splaris.33016: . ack 2 win 9216 (DF)
<mss 1460>
solaris
<mss 296>
bsdi
512 B (DF)
slip
ICMP “too big (mss 296)”
81
Troubleshooting & Monitoring
(1) Diagnostic Tools
(2) Testing Basic Connectivity
(3) Troubleshooting Network Access
(4) Checking Routing and Name Service
(5) Analyzing Protocol Problem
(6) SNMP; Simple Network Management Protocol
82
SNMP ; RFC1157
Simple Network Management Protcol
・ UDP port 161 / 162
・ Client/Server protocol
- manager (client) @ device being managed
- agent (server) @ NMS(Network Management Center)
・ Request / Response protocol
- requesting ; manager
- responding ; agent
・ Request Types
- polling
- trap-directed polling
83
SNMP Operation
SNMP agent
SNMP manager
get-request
UDP port 161
get-response
get-next-request
UDP port 161
get-response
set-request
UDP port 161
get-response
UDP port 162
trap
84
SNMP SMI
・ SMI (Structure of Management Information) ; RFC1155 / 1065
- Managed object ; object identifier
- Global unique name
- Hierarchical name structure
- ISO’s ANS.1 (Abstract Syntax Notation One) format
(*) ISO 8824
- MIB (Management Information Base)
= individual database of management information
(i) Network maps
(ii) Tabular data displays
(iii) Filters
(iv) Alarms
85
SMI Object Identifiers
root
ccitt(0)
iso(1)
joint-iso-ccit(2)
org(3)
dod(6)
internet(1)
directory(1)
mgmt(2)
mib(1)
system(1)
<= 1.3.6.1
experimental(3)
<= 1.3.6.1.2.1
private(4)
enterprise(1)
interface(2) at(3) ip(4) icmp(5) tcp(6) udp(7) .........
86
SNMP ANS.1
・例;
(1) udp (1.3.6.1.2.1.7) の IpAddress の表現方法
IpAddress ::=
[APPLICATION 0]
-- in network-byte order -IMPLICIT OCTET STRING (SIZE(4))
(2) udp (1.3.6.1.2.1.7) の udpNoPorts の表現方法
udpNoPorts OBJECT-TYPE
SYNTAX
Counter
ACCESS
read-only
STATUS
mandatory
DESCRIPTION
“The total number of received UDP datagrams
for which there was no application at the
destination port.”
::={ udp 2}
87
88
TCP/IPネットワーク構築と管理
89
レポートの課題
• 1週間の自分宛の電子メールの分布を以
下の観点で調べなさい。
– メールの大きさ(添付メールを含む)
– 送信元の{gTLD}と{ccTLD+NLD}
– SPAMメール
• 1つRFCを選び、その内容を、簡潔にまと
めなさい。
90