Part 1 UNIXコミュニケーション Lesson 5 の課題 Topics 1.ネットワークの種類を知る. 基礎知識 UNIXコミュニケーション 2.ネットワーク参照モデル. 第7層 基礎知識 アプリケーション層 第6層 プレゼンテーション層 スに関するプロトコル データの表現形式の変換・分割・統 合に関するプロトコル 第5層 通信の制御やコネクションの確立・ セッション層 開放・同期などに関するプロトコル 第4層 通信の品質やデータの転送を保証す トランスポート層 第3層 ネットワーク層 第2層 データリンク層 第1層 物理層 90 アプリケーションが利用するサービ るためのプロトコル ネットワーク間のコネクションの制 御や経路(ルーティング)に関する プロトコル ビット列のデータをパケット化して 他のネットワークに転送するための 制御に間するプロトコル データを電気信号に変えて物理的な ケーブルなどを介して送受信するた めのプロトコル Lesson 5 ネットワークの基礎 Topics 3.ネットワーク装置の設定情報を調べる. 基礎知識 UNIXコミュニケーション Ethernet 4.パケットの通信状況を調べる. ビット1 クラス A 0 ネットワーク クラス B 1 0 クラス C 1 1 0 クラス D 1 1 1 0 クラス E 1 1 1 1 ビット32 ホスト IPv4 IPアドレス ネットワーク(14bit) ホスト ネットワーク(21bit) ホスト マルチキャスト用 実験 5.ネットワークの識別と分割. IPアドレスの仕 ネットワークアドレス部 サブネットアドレス部 11000000.10101000.00001010 . 0000 ホストアドレス部 . 組み 0001 6.次世代のアドレス. IPv6 f480 : 0000 : 0000 : 0000 : 0200 : f4ff : fe90 : c46e ネットワーク部(プレフィックス) ホスト部(インターフェースID) 91 Part 2 UNIXコミュニケーション Essentials ネットワーク(Network) 1 ネットワークの種類 複数台のコンピュータをケーブルで接続し,互いに情報をやり取り できるようにしたものをコンピュータネットワーク (あるいは単にネッ トワーク) と呼ぶ.ネットワークは,コンピュータの台数や接続の方法, 範囲によって,さまざまな種類がある. UNIXコミュニケーション 単純に複数のコンピュータを接続する LAN(Local Area Network) WAN(Wide Area Network) 同じ敷地内にあるコンピュータを接続する (LAN:Local Area Network) ISO(International Organization for Standards) OSI(Open System Interconnection) ネットワーク参照モデル TCP(Transaction Contorol Protocol) IP(Internet Protocol) 離れた場所にある LAN 同士を接 続する(WAN:Wide Area Network) 92 Lesson 5 ネットワークの基礎 2 ネットワーク参照モデル Scratch Pad コンピュータやコンピュータ同士を接続するための機器,通信を行 うためのアプリケーションなどには, さまざまな種類のものが考えられ る.複数のコンピュータを接続するには,あらかじめどのような機器を 用いてどのような方法で接続するのかを決めておく必要がある. そうし UNIXコミュニケーション た約束事をプロトコル(Protocol:通信規約)と呼ぶ. プロトコルには,ケーブルなどの物理的な規約から使用するサービ スに関する規約までさまざまなものがあり,ISOでは,つぎのようなレ ベルに区分するネットワーク参照モデル(OSI基本モデル)が提唱され ている. 第7層 アプリケーション層 第6層 プレゼンテーション層 アプリケーションが利用するサービ スに関するプロトコル データの表現形式の変換・分割・統 合に関するプロトコル 第5層 通信の制御やコネクションの確立・ セッション層 開放・同期などに関するプロトコル 第4層 通信の品質やデータの転送を保証す トランスポート層 第3層 ネットワーク層 第2層 データリンク層 第1層 物理層 るためのプロトコル ネットワーク間のコネクションの制 御や経路(ルーティング)に関する プロトコル ビット列のデータをパケット化して 他のネットワークに転送するための 制御に間するプロトコル データを電気信号に変えて物理的な ケーブルなどを介して送受信するた めのプロトコル また,インターネットでは,4層に区切ったネットワークモデルが提 唱されている. 第4層 アプリケーション層 第3層 トランスポート層 第2層 インターネット層 第1層 ネットワークインターフェース層 93 Part 2 UNIXコミュニケーション Essentials ネットワーク装置(デバイス) NIC(Network Interface Card) 3 ネットワーク装置の設定情報を調べる パソコンをネットワークに接続するには, Etherポートが装備されて いて正常に機能しているか調べると良い.Etherポートは,現在ほとん どのパソコンに内蔵されているが,NIC(Network Interface Card)を装 備したり,増設したりすることができる. UNIXコミュニケーション 通常パソコン 本体に内蔵さ れている. Let’s Touch NIC の設定を調べよう. [takai]$ /sbin/ifconfig eth0 Link encap:Ethernet HWaddr 00:A0:24:6D:02:1F inet addr:192.168.0.3 Bcast:192.168.0.255 UP BROADCAST RUNNING MULTICAST (/sbin/)ifconfig MTU:1500 Mask:255.255.255.0 Metric:1 RX packets:84145 errors:0 dropped:0 overruns:0 frame:0 TX packets:48377 errors:0 dropped:0 overruns:0 carrier:0 collisions:2934 txqueuelen:100 eth0 Interrupt:10 Base address:0x210 Ethernet MAC アドレス lo Link encap:Local Loopback メーカーコード inet addr:127.0.0.1 Mask:255.0.0.0 製品コード UP LOOPBACK RUNNING MTU:3924 Metric:1 RX packets:1210 errors:0 dropped:0 overruns:0 frame:0 ブロードキャストアドレス ネットワークに接続されたすべて の機器にデータを送信するためのアド TX packets:1210 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 レス ネットマスク ■ ifconfig ・・・ ネットワークインターフェースの設定・情報の表 示 書式:ifconfig 94 -オプション パラメータ Lesson 5 ネットワークの基礎 オプションを指定せずに ifconfig を実行すると,現在使用可能な Scratch Pad ネットワークインターフェースの情報が表示される. パソコンに装備さ れた Ether ポートは,eth0 という装置(デバイス)名で認識される.装 置名が lo となっているのは,自分自身(ローカルホスト)を表す. Link encap 欄の Ethernet とは,データを電気信号に変えて送受信 するための規格であり,IEEE802.3として標準化されている第1層物理 UNIXコミュニケーション 層の規格である.Ethernet では,NIC などの個々の機器に MAC アドレス (ハードウェアアドレス)を割り当てることによって,ホストを識別す る. MACアドレス(HWaddr)は,NICひとつひとつにあらかじめ登録されて いる.MACアドレスは,ネットワークに接続されている装置を識別する ために用いられ,ネットワーク参照モデルの第2層データリンク層で必 要となる. MACアドレスは,24ビットのメーカーコードと同じく24ビットの製 品コードからなり,8 ビットごとに区切られ,16 進数で表される. メーカーコード 製品コード 24 ビット 24 ビット 00:A0:24 6D:02:1F TCP/IPを用いてネットワークに接続されている場合は, inetと表示 され,ネットワーク参照モデル第3層のネットワーク層で用いられるIP アドレスやブロードキャストアドレス(Bcast), ネットマスク(Mask)な どの情報も表示される. RX,TX 行は,装置が機能し始めてからの通信状況を表す.RX 行は, ネットワークから受け取ったパケット(データの束,次節参照)数や発 生したエラー数などが, TX行にはネットワークへ送信したパケット数や 発生したエラー数が示される. Tips & Techniques MAC アドレスのメーカーコードは,IEEE で管理されており,メー カーコードからそのNICのメーカーが分かるようになっている.メー カーコードとメーカーの対応は, つぎのWebページで調べることがで きる. http://standards.ieee.org/regauth/oui/index.shtml 95 Part 2 UNIXコミュニケーション Essentials 4 パケットの通信状況を調べる ネットワークに接続された装置やコンピュータを識別するには, MAC アドレスの他に IP アドレスが用いられる.IP アドレスは,ネットワー クモデルの第3層ネットワーク層で使用されるIP(Internet Protocol) で使用される.ネットワークに接続された装置やコンピュータには, 固 UNIXコミュニケーション 有の IP アドレスが付与される. IP アドレスは,32 ビットの数値で表され,通常 1オクテットごとに 10 進数で表し,”.” (ドット)で区切って表現する, 11000000 . 10101000 . 00000000 . 00000001 192 . 168 . 0 . 1 IP アドレス クラス(A ∼ E) IP アドレスは,ネットワークアドレス部とホストアドレス部から なっており, ネットワークアドレスで1つのネットワークを,ホストア ドレスで1つの装置やコンピュータを一意に表現し識別できるように なっている. ネットワークアドレスの上から数ビットは,クラス識別子 と呼ばれ,この数ビットの値によって IP アドレスは 5 つのクラスに区 プライベートアドレス プライベートアドレスに対して, インターネットで使用する IP アドレ スをグローバルアドレスと呼ぶ. 分されている. ビット1 クラス A 0 ビット 32 ネットワーク(7bit) ホスト(24bit) ホスト(16bit) パケット クラス B 1 0 ネットワーク(14bit) ping クラス C 1 1 0 クラス D 1 1 1 0 クラス E 1 1 1 1 ネットワーク(21bit) ホスト(16bit) マルチキャスト用 実験用 クラス A の IP アドレスでは,上位 1 桁が 0 で,1 つのネットワーク アドレスにつき,ホストアドレス部分の24ビット分つまり16,777,216 から上述の 2 つの予約アドレスを引いた 16,777,214 台の装置やコン ピュータを接続することができる.同様にクラス Bでは,65,634台,ク ラスCでは254台の装置やコンピュータを接続できることになる.なお, クラス D とクラス E は,特別な用途に用いられる.クラス A からクラス C までの IP アドレスは、よってつぎのように割り当てられている. 96 クラス A 1.0.0.0 ∼ 126.0.0.0 クラス B 128.0.0.0 ∼ 191.255.0.0 クラス C 192.0.0.0 ∼ 223.255。255.255 Lesson 5 ネットワークの基礎 ただし、ホストアドレスがすべて 0 のアドレス(たとえば、 Scratch Pad 202.236.112.0 など)は,ネットワーク全体を表すものとして,装置や コンピュータに割り当てることができない.また,ホストアドレスがす べて 1 となるアドレス(たとえば、202.236.112.255 など)は,ブロー ドキャストアドレスとして予約されているので, これもコンピュータに 割り当てることができない. UNIXコミュニケーション また、つぎのアドレスは、プライベートアドレス(LAN 内でのみ使 用可能なアドレス) として予約されているのでインターネット上では用 いることはできない。 クラス A 10.0.0.0 ∼ 10.255.255.255 クラス B 172.16.0.0 ∼ 172.31.255.255 クラス C 192.168.0.0 ∼ 192.168.255.255 他のホストとのデータのやり取りには,このIPアドレスが用いられ る. Let’s Touch 目的のホストにパケットが送信されていることを確認しよう. [takai]$ ping 192.168.0.10 PING 192.168.0.10 (192.168.0.10): 56 data bytes 64 bytes from 192.168.0.10: icmp_seq=0 ttl=128 time=0.8 ms 64 bytes from 192.168.0.10: icmp_seq=1 ttl=128 time=0.7 ms 64 bytes from 192.168.0.10: icmp_seq=2 ttl=128 time=0.7 ms 64 bytes from 192.168.0.10: icmp_seq=3 ttl=128 time=0.8 ms 64 bytes from 192.168.0.10: icmp_seq=4 ttl=128 time=0.7 ms ^c --- 192.168.0.10 ping statistics --5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max = 0.7/0.7/0.8 ms ■ ping ・・・ ホスト間の接続を確認する 書式:ping IP アドレス(またはドメイン名) ネットワーク層では,送信されるデータを分断し,先頭に送信先の ホストの IP アドレスと送信元のホスト(自ホスト)の IP アドレスを付 して,パケットと呼ばれるデータの束にする. 97 Part 2 UNIXコミュニケーション Essentials ICMP(Internet Control Message Protocol) パケットがIPアドレスに基づいて正しく相手のホストに届いている かどうかを確認するには,IP ネットワーク診断プロトコルであるICMP (Internet Control Message Protocol)を利用する.ping は,ICMP の 「ECHO_REQUEST」パケットを相手ホストに送信し,その応答を調べるこ とによって接続を確認するコマンドである. pingの診断結果は, 送信パケット,相手ホストからの応答パケット, UNIXコミュニケーション 応答パケットが届くまでの時間, 送信したパケット数,受信できなかっ たパケット数などの統計情報が示される. IP アドレスと MAC アドレスの対応を調べよう. [takai]$ /sbin/arp arp(Address Resolution Protocol) arpキャッシュテーブル Address HWtype bluemountain 00:90:CC:A2:09:88 mocha HWaddress 00:90:CC:A0:BF:BA Flags Mask C Iface eth0 C eth0 [takai]$ ■ arp ・・・ IP アドレスと MAC アドレスの変換テーブルの表示 書式:arp (ホスト名) 第3層のIPと第2層のEthernetの変換は,arp(Address Resolution Protocol)によって行われる.初めて通信するホストの場合,IPアドレ スと MAC アドレスの対応がわからない.そこで,ある IP パケットをブ ロードキャストを用いてネットワークのすべてのコンピュータに対して 送信する. パケットを受け取ったホストが,自分当てのパケットである ことを認識すると,送信元のホストに対して MACアドレスを返信する. 返信されたMACアドレスは,IPアドレスとMACアドレスの対応表である arp キャッシュテーブルに登録され,次回からはこの arp キャッシュ テーブルを参照してパケットを効率よく送信することができるようにな サブネット る.arp コマンドは,arp キャッシュテーブルの調査と変更を行うコマ サブネットアドレス ンドである. サブネットマスク 98 Lesson 5 ネットワークの基礎 Scratch Pad 5 ネットワークの分割 ひとつのLANには,少なくとも1つ以上のネットワークアドレスを 用いることになる.たとえば,いまクラス C のネットワークアドレス 192.168.10.0が割り当てられたLANがあったとしよう.このネットワー クをさらに複数のネットワークに分割(サブネット化)したい場合, UNIXコミュニケーション ネットワークアドレスを延長することによって, 複数のネットワークに 分割することができる.延長したネットワークアドレス部分を「サブ ネットアドレス部」と呼ぶ. ネットワークアドレス部 サブネットアドレス部 11000000.10101000.00001010 . 0000 ホストアドレス部 . 0001 今,ホストアドレス部の上位4ビットをサブネットアドレスとした としよう. するとネットワークアドレスとブロードキャストアドレスを 除いた 0001 から 1110 までの 14 個のサブネットワークを作ることがで き,それぞれのサブネットにはホストアドレスが0001から1110までの 14台の機器を接続できることとなる. どこまでをネットワークアドレスとして用いたかは,ネットマスク によって表される.ネットマスクは,ネットワークアドレス部をすべて 1 とし,ホストアドレス部をすべて 0 としたものである.クラス A から クラスC のネットマスクはつぎのようになる. クラスA 11111111.00000000.00000000.00000000=255.0.0.0 クラスB 11111111.11111111.00000000.00000000=255.255.0.0 クラスC 11111111.11111111.11111111.00000000=255.255.255.0 Let’s Touch クラスCのアドレスで, 4ビットのサブネットアドレスを設定した場 合のネットマスクを計算しよう. ネットワークアドレス部を 4 ビット延長したと考えると,上位 28 ビットを 1,残り 4 ビットを 0 としたものがネットマスクとなる. なお,サブネットアドレス部とホストアドレス部のみのマスクをサ ブネットマスクと呼ぶ.ネットマスクが28ビットのホストのIPアドレ スはつぎのように表現される. 192.168.10.30/24 末尾に/ネットマスクのビット数を付す 99 Part 2 UNIXコミュニケーション Essentials 基本操作 IPv6 6 IPv6 これまで主流だったIPはバージョン4(IPv4)であるが,アドレスに 限りがあるため,新たにバージョン6(IPv6)が策定され,使われ始めて いる.IPv6 では,128 ビットのアドレスが用いられる. IPv6 では,128 ビットを 16 進数で表記し,4 桁ごとに「:」で区切っ て表記する. f480 : 0000 : 0000 : 0000 : 0200 : f4ff : fe90 : c46e プレフィックス インターフェースID ネットワーク部(プレフィックス) ホスト部(インターフェースID) 少しでも短く表記するために, 各ブロックの上桁の0は省略すること ができる.また、0000のブロックは,ブロックの区切りごと省略するこ とができる. f480 : : 0200 : f4ff : fe90 : c46e IPv6では,アドレスの有効範囲(スコープ)に応じて,3種類のユニ ユニキャストアドレス キャストアドレスが用意されている. 最初 ・グローバルアドレス・・・インターネット上で有効なアドレス. グローバルアドレス サイトローカルアドレス リンクローカルアドレス のブロックが「2」または「3」となる. 最初のブ ・サイトローカルアドレス・・・組織内で有効なアドレス. ロックが「fec0」となる. ・リンクローカルアドレス・・・ルータで区切られたネットワーク内で 有効なアドレス. プレフィックス全体でが 「fe80::」となる. さらに,マルチキャスト用のアドレス,ループバックアドレスなど が用意されている. . Let’s Touch 使用しているシステムのIPv6のアドレスを調べよう. [takai ]$ /sbin/ifconfig eth0 Link encap:Ethernet HWaddr 00:00:F4:90:C4:6E inet addr:192.168.0.40 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::200:f4ff:fe90:c46e/64 Scope:Link IPv6が設定されていれば,ifconfigの結果に表示される. 100 Lesson 5 ネットワークの基礎 Using Your Skills Hints 基本操作 ①つぎの用語の意味を説明せよ. 1)Ethernet 2)LAN 3)TCP/IP 4)ネットワーク参照モデル ②現在利用しているホストに装着されているNICの設定を調べよ. ③ホストが使用しているNICのメーカーを調べよ. p.95コラム参照 ④ arp キャッシュテーブルを参照し,他のホストの MAC アドレスと装 置のメーカー名を調べよ. ⑤arpキャッシュテーブルに登録されている他のホストにパケットが 送信可能であることを確認せよ. ⑥現在利用しているホストのネットマスクが30ビットであった場合の ホストのサブネットマスクとネットワークアドレス, ブロードキャ ストアドレスをそれぞれ計算せよ. ヒント:あるIPアドレスのネットワークアドレスは,IPアドレス とネットマスクの論理積によって求めることができる. 192.168.10.115/28の場合 11000000.10101000.00001010.01110011 AND) 11111111.11111111.11111111.11110000 192.168.10.112 11000000.10101000.00001010.01110000 =192.168.10.112 また,そのサブネットのブロードキャストアドレスは,ホスト アドレスのみをすべて1としたアドレスとネットワークアドレスの 論理和で求めることができる. 11000000.10101000.00001010.01110000 OR) 00000000.00000000.00000000.00001111 192.168.10.127 11000000.10101000.00001010.01111111 =192.168.10.127 ⑦IPv6のマルチキャストアドレス,ループバックアドレスをそれぞれ インターネットを使って調べなさい. 101
© Copyright 2024 Paperzz