.
.
.
.
.
TOPページ(Alt+B)
.
知っておくと便利なネットワークの知識

TCP/IP

ネットワーク通信は、プロトコルと呼ばれる通信手段を用いることによって行われていますが、現在インターネットの標準プロトコルとして広く認知されているのがこのTCP/IPです。厳密にはTCPとIPは別物ですが、はがきで例をとると宛先(住所)がIP、実際に配達するのがTCPの役割です。TCP/IPと呼ばれるように両者は密接な関係を持っています。

IPアドレス

コンピューターの内部ではデーターを2進法の数字として扱っています。2進法1桁分が1bit(ビット)、それが8個で1byte(バイト)という単位になります。つまり2進法の「0」〜「11111111」の数値が1byteで表現可能です。
これは、10進法で表すと「0」〜「255」の256種類の数字に相当します。IPネットワークにおける住所を示すIPアドレスは、この1byteの数字を4つ使用して「.」で区切って表現しています。
またこれらの区切りのことをセグメントといいます。
データを相手に届けるためには、相手の所在が明確に判断できないといけません。そのためIPアドレスはユニーク(唯一)なものでなければなりません。

IPアドレス 192(第1セグメント).168(第2セグメント).1(第3セグメント).100(第4セグメント)

サブネットマスク

サブネットマスクを指定するとネットワークのアドレスの一部を見えなくする(マスクする)作用があります。
例えば、「255.0.0.0」とすると、第一セグメントが異なるアドレスは見えなくなります。同様に「255.255.0.0」とすると、第一か第二セグメントが異なるアドレスが見えなくなります。つまり、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(小規模なネットワークに使用する)

この範囲のアドレスであれば、誰でも自由に使用することができます。自分のネットワークは、この範囲の数値を使用して構築します。つまりLAN等イントラネットにはプライベートアドレスを使用します。

グローバルアドレスは、インターネット上で使用する世界で唯一のアドレスです。アドレスを世界で唯一にするための組織「IANA」があり、日本にはその下部組織「JPNIC」(http://www.nic.ad.jp/)があります。このような組織に申請することでグローバルアドレスが割り当てられます。

TCPとUDP

IP上での通信プロトコルには大きく分けて2つの方式があります。1つはTCP、もう1つはUDPです。TCPはコネクション型通信なので、ネットワーク上で仮想的にチャンネルを確立し、データが送信されます。つまりデータの送信について信頼性を保証する通信であるため、データは送り出した順序でロスなく送信されます。ロスがあった場合でも再送などの手順を行い信頼性を保証しています。一方のUDPはコネクションレス通信です。この方式では送信元と送信先の間での接続を保証せず、それぞれのデータをパケットとして単独に送ります。このためUDPではパケットの順序が送り出した通りでなかったり、パケットが失われてしまうこともあります。この方式はビデオ配信や音声配信といった若干データがロスしても大きな問題にならない場合に使用されています。

ポート

IPアドレスで宛先を指定しても1台のコンピュータ上ではさまざまなプログラムが同時に動作しています。そこで通信を行うためにはコンピュータ上のどのプログラムと通信を行えばよいのか指定しなければなりません。ポート(番号)はコンピュータ上でネットワークのデータに対して仮想的に準備した宛先です(テレビのチャンネルのようなもの)。あらかじめ決められたポート番号に入ってくるデータを監視することにより、データを正しく受け取ることができます。ポート番号は0番から65536番までありますが、0〜1023番まではあらかじめ予約されており、代表的なポート番号にはHTTPの80番、FTPの21番などがあります。(Linuxにおけるポート番号の定義ファイル

ICMP

ICMPとはInternet Control Message Protocolの略で、エラー通知や通信状態の診断機能など、IPにはない機能を補うために用意されたプロトコルです。TCPやUDPと違ってポートの概念はありません。その代わりにIPによる通信のエラーを通知するメッセージ機能、通信状態の診断に使う問い合わせ用のメッセージコマンド機能があります。ICMPの代表的なものとして相手ホストの応答を調べるpingコマンドや、ホスト到達までの経路情報を調べるtraceroute(Windowsではtracert)などがあります。

TTL

TTLとはTime To Liveの略で、ネットワークを流れるデータ(パケット)がネットワーク上に存在してもよい時間を示したものです。TTLの値が0になった時点でそのパケットは破棄されます。これはパケットが無限ループなどに陥ってしまった場合などに効果を発揮します。もともとは生存時間を秒単位で示すものでしたが、実際にはルーターを通過するたびにTTLの値が1つずつ減るように実装されているケースが多いようです。TTLの最大値としては255をセットすることが可能です。Windows9*は32、NT/2000/XPは128がデフォルト値となっています。

URL

URL(Uniform Resource Locator)はURI(Uniform Resource Identifier)の一種で、ネットワーク上のリソースを一意に特定することができます。

http://www5.plala.or.jp/vaio0630/

上記のようにURLの記述は プロトコル://マシン名(ドメイン名):ポート番号/ファイル名 と指定します。プロトコルにはHTTPやFTPがあり、ポート番号はプロトコルごとに決められているデフォルトの番号を使う場合には省略可能です。HTTPでは80番ポートがデフォルトなので、特に指定されていない場合には80番を使用します。上の場合の詳細はHTTPプロトコルを使い、www5.plala.or.jpというマシン名の中のvaio0630という場所を指定し、標準ポートの80番を使っているためポート番号の指定は省略しています。

インターネットサーバーの種類と役割

1.DNS(ドメインネーム)サーバー

IPアドレスは数字で表現されているため、人間にとって覚えにくい不便なものです。そこで通常はネットワーク上の機器にマシン名(ホスト名)を付けて、その名前を使って通信できるようにしています。DNSサーバーは、人間にとってわかりやすい「vaio.ad.jp」といったマシン名を機械のわかりやすい「210.153.20.0」といったアドレスに関連づけるシステムです。

2.Webサーバー

ホームページなどを提供するサーバーで、誰でも自分から情報を発信することを可能にします。

3.Mailサーバー

世界標準のe-mailというメールを送受信します。届いたメールはメールボックスに溜めておき、メールボックスの所有者がそれを閲覧したり削除したりすることができます。 (Outlook Expressの設定のページへ

4.FTPサーバー

自由な形式のデーターを自由にダウンロードできるように、登録しておけるシステムです。(FTPリファレンスのページへ

5.Newsサーバー

Newsサーバーの情報は、特定ユーザーが自由に閲覧できる情報をデータベース化してあります。各ユーザーは、どの情報が未読なのかの判断をしながら閲覧することができます。

6.Proxyサーバー

代理サーバーとも呼ばれる、もともとはセキュリティー上の必要から考案されたサーバーシステムですが、現状はキャッシュ的な意味合いが強くなっています。このサーバーを経由することでサーバーに一時的にデータがスプール(蓄積)されて、同じデータを要求されると、元のデータにアクセスしなくても溜まったデータからその内容を引き出すことができます。これにより、データトラフィック(データの交通量)を軽減したり、アクセススピードを向上させたりすることができます。
また、Proxyサーバーにはファイヤーウォールの機能を備えたものがあります。(Proxyサーバーのページへ

ファイヤーフォール

外部からの不正アクセスを防止したり、内部からの情報の漏洩を防ぐためのシステム。ダイアルアップルータを導入してフィルタリング(パケットフィルタリング)をかけたりNIC(ネットワークインタフェースカード)を2枚使用し、この2つのネットワークカードをそれぞれ別々のネットワークアドレスにしたりすることで実現可能となります。

パケットフィルタリング

パケットフィルタリングとは、IPアドレスやポート番号を使ってパケット(ネットワークを流れるデータ)を振るい分けすることをいいます。これを使いサーバーやルーターに送られてくるパケットのうち、認めるものとそうでないものを決定します。例えばサーバー上で実際には23番ポートを使ったtelnetサービスを動かしていても、外部からの23番ポートへの通信を拒絶するようにパケットフィルタリングを設定すると、単純なポートスキャンではそのtelnetサービスの有無を見つけることができません。多くの「ファイヤーウォール」製品がこの機能を実装しています。

ヘッダ

上述のパケットには、送信元や宛先などを記録した情報が含まれています。これをヘッダといいます。

IPヘッダ TCPヘッダ
  プロトコル名   通信元
IPアドレス
送信先
IPアドレス
    通信元
ポート番号
送信先
ポート番号
  通信フロー
制御フラグ
  データ

・TCP/IPのパケット構造

このようにデータはIPヘッダやTCPヘッダが付加された状態でネットワーク上を流れています。ヘッダの最初から、IPヘッダのプロトコル名でそれがICMPなのか、TCPなのか、UDPなのかを判別し、通信元と送信先のIPアドレスを判別します。そして、TCPヘッダで通信元と送信先のポート番号を判別し、通信フローの制御フラグを判別します。通信フローの制御フラグには、URG、ACK、PSH、RST、SYN、FINがありそれぞれの役目は次のようになっています。

URG   緊急に処理すべきデータが含まれていることを上位アプリケーションに渡す必要があることを示す。
ACK 各接続要求に対する応答を行う。
PSH   受信したデータを直ちに上位アプリケーションに渡す必要があることを示す。
RST 何らかの異常を検出した場合にコネクションを強制的に切断する。
SYN   コネクションの確立を要求する。
FIN TCP通信を終了させる要求を行う。

通常の通信ではクライアントがSYNフラグを設定したパケットを送信し、サーバーがSYN+ACKパケットを送信し、さらにクライアントがACKパケットを送信した後、コネクションが確立します。異常通信の場合、例えばポートを閉じているサーバーに対してSYNパケットが送られてきた場合、そのサーバーはRSTフラグを有効にしたバケットを返信し、コネクションを強制的に切断します。

ゲートウェイ

プロトコルが異なるネットワークを相互接続する装置(ルーター)。デフォルトゲートウエイのアドレスとはこのルーターに割り当てられたアドレスのことで、ネットワークアドレスに含まれる領域のアドレスならどれでもよいのですが、一般的にはネットワークアドレスの一番始めの番号を使用することが多いようです。

では、実際にTCP/IPの設定を行ってみましょう。

・Windows95/98/Meの場合

「コントロールパネル」から「ネットワーク」をクリックすると以下の画面になります。

ネットワーク1

現在のネットワーク構成欄にTCP/IPがありますか?なければ「追加」ボタンをクリックしてインストールしましょう。

ネットワーク2

ネットワーク3

ネットワーク構成ファイルの追加から「プロトコル」を選択して「追加」ボタンを押すとネットワークプロトコルの選択画面になります。ここではMicrosoftのTCP/IPを選択して「OK」ボタンを押すとインストールが始まります。途中でWindows95/98のCD-ROMを要求されることがありますので用意しておきましょう。
インストールが完了したら、パソコンを再起動します。

インストールできたら先程のネットワークの設定から「TCP/IP」を選択してクリックすると下記画面になります。通常、設定で必要なのは「IPアドレス」、「ゲートウエイ」、そして「DNS設定」の項目です。

TCP/IPのプロパティ1

「IPアドレス」、「サブネットマスク」にはあらかじめ決めておいたアドレスを正確に入力します。

TCP/IPのプロパティ2

「ゲートウエイ」も「新しいゲートウエイ」欄に正確に入力して「追加」ボタンを押します。

TCP/IPのプロパティ3

「DNS設定」は外部にアクセスする際には必要です。「DNSを使う」を選択し、「ホスト」、「ドメイン」と入力していきます。「DNSサーバーの検索順」については通常、ルーターに割り振られたアドレスを入力しますが、ご利用のDNSサーバーのグローバルアドレスが判っている場合はプライマリ、セカンダリの順にそれを入力します。

ネットワーク3

ネットワークの「識別情報」のところには「コンピューター名」と「ワークグループ」を入力します。
全てが完了したら再び「ネットワークの設定」タブに戻ってネットワーク構成から「Microsoftネットワーククライアント」を選択すると、下記画面になります。

ネットワーク4

社内LAN等でサーバーがWindowsNTの場合、WindowsNTのドメインにログオンするにチェックを入れ、ドメイン名を入力します。

・Windows2000/XPの場合

Windows2000/XPの場合はデフォルト(初期状態)でTCP/IPはインストールされています。確認するには「コントロールパネル」から「ネットワークとダイアルアップ接続」を開き「ローカルエリア接続」をクリックすると以下の画面になります。

ローカルエリア接続状態

「プロパティ」をクリックすると「ローカルエリア接続のプロパティ」が表示されます。

ローカルエリア接続のプロパティ

「ローカルエリア接続のプロパティ」の中の「インターネットプロトコル(TCP/IP)」をダブルクリックします。

TCP/IPのプロパティ

初期状態では「IPアドレスを自動的に取得する」にチェックが入っているはずです。通常はこのままで構いません。複数のパソコンが存在する場合はハブやブロードバンドルーター経由で相互接続を行いますが、その場合でも大抵のブロードバンドルーターにはDHCP(自動的にそれぞれのパソコンにIPアドレスを振り当てる機能)が付いていますのでこのままで十分です。ただ、慣習的に筆者はそれぞれのマシンにIPアドレスを手動で割り当てておくようにしています。IPアドレスを手動で割り当てる際の注意点は例えば「192.168.x.x」のクラスCプライベートアドレスなら第3セグメントの値を統一しておく必要があるということです。1台には「192.168.1.10」と割り当て、もう1台には「192.168.2.20」などと割り当ててはいけません。例として1台のブロードバンドルーターと4台のパソコンがある場合は

ルーター 192.168.1.1
マシンA  192.168.1.10
マシンB  192.168.1.20
マシンC  192.168.1.30
マシンD  192.168.1.40

のように割り当てます。

インターネットに接続するにはDNSサーバーのアドレス入力が必須ですが、「IPアドレスを自動的に取得する」場合は、DNSサーバーも自動的に取得してくれるケースが多いようです。DNSサーバーのアドレスはプロバイダから指定されたアドレスを入力します。更に「詳細設定」ボタンを押すと

TCP/IP詳細設定

「IP設定」、「DNS」、「WINS」、「オプション」それぞれが選択できる画面が出てきます。「WINS」や「オプション」は通常利用で使われることはほとんどありません。「DNS」タブのDNSサーバアドレス(使用順)はいわゆるDNSサーバーの検索順で通常複数のDNSサーバー(プライマリとセカンダリ)を指定し、一番目のDNSサーバーに障害が発生しても二番目のDNSサーバーで名前の解決が行えるようにしておきます。「DNSサフィックスうんぬん」についてはそのままにしておきます。ヘルプを読んでも何が云いたいのか理解できる方はほとんどいないと思います。もちろん筆者も理解できません。余計なことはせずにこういったことはhostsファイルに定義したほうがシンプルですし、安全です。例として4台のパソコンがあり、ネットワークらしくするためドメイン名をmyhome.netと決め、コンピューター名(マイコンピュータを右クリック-「プロパティ」-「ネットワークID」タブの「プロパティ」で設定する)をそれぞれns01、02、03、04と付け、IPアドレスをそれぞれ10、20、30、40と付けた場合はそれぞれのマシンのC:\WINDOWS\SYSTEM32\DRIVERS\etcディレクトリ内のhostsという名前のファイル(無ければ新規で作成)に

127.0.0.1 localhost.localdomain
192.168.1.10 ns01.myhome.net
192.168.1.20 ns02.myhome.net
192.168.1.30 ns03.myhome.net
192.168.1.40 ns04.myhome.net

と書いておけば名前の解決においてほとんど問題を引き起こすことはありません。

以上でネットワーク設定は完了です。パソコンの再起動を促されますので、再起動しましょう。

いずれの場合もそうですが、自宅で家庭内LANの構築をする場合はあらかじめ必要事項を自分で決めておかなくてはなりません。会社でのLANについてはシステム管理者に必要事項を問い合わせましょう。

TOPページ(Alt+B)

CopyRight (C) 2000-2013 by T.Shiraishi All right reserved 無断転載禁止/リンクフリー