ネットワークスペシャリスト(インターネットプロトコル)

テキストで最も分厚いところ・・・。まあここがネットワークの知識で
重要な部分なので仕方ない。他にマスタリングTCP/IPも並行して
通勤途上で読んでます。

1:インターネット技術の基本

インターネットの定義
ネットワークとネットワークを結んで相互に通信する。
ネットワークをまたがって通信しているものは
インターネットワーキングを行っている。
サブネットワークの集合がインターネット
・インターネット成立の経緯
インターネットとIPは密接に関係している。
   DARPAの軍事用通信回線開発が起源  
   ARPHANETにIPが実装され運用された。
1拠点が破壊されても迂回経路で通信が可能
・アクセス経路の発展
アナログ回線ISDNADSLFTTH
   他にCATVも存在している。
・インターネット利用の高度化
イントラネット
→TCP/IP技術を用いた企業内ネットワーク
インターネットVPN
→伝送経路としてインターネットを利用するが
暗号化と認証で正規のユーザしか通信内容を
閲覧できないようにしている。
エクストラネット
→異なる企業間をインターネットで接続する。

 2:IPの基礎知識
・IP
ネットワーク層のプロトコルで
TCP/IPプロトコルスイートの中核
以下3つの特徴を持つ
パケット通信技術である
ベストエフォートのコネクションレス通信
経路制御を行う
経路制御
インターネット上には無数のIXやルータが存在する。
その中から最も適切な経路を選ぶ作業がルーティング
ダイナミックルーティングスタティックルーティング
存在する。     
IPヘッダ
IPはトランスポート層からデータを受取ってIPヘッダを
付与してデータリンク層にパケットを受け渡す。
   ・IPアドレス(IPv4)
インターネット上の端末を一意に識別するための
アドレス体系で32ビットの2進数で表現される。
     2進数だと人間にはわかりにくいので8ビットずつ
10進数に区切って表記する。
例)192.168.0.1
    ネットワークアドレスホストアドレスで構成される。
サブネットマスク
  IPアドレスをネットワークアドレスとホストアドレスに区切るための
マスクビット、1がネットワークアドレス部、0がホストアドレス部を
示している。
例)255.255.255.0
   ・IPアドレスクラス
IPアドレスを先頭アドレスで4つのクラスに分割する。
クラスA→先頭が「0」で始まる。16,777,216のホストアドレス
クラスB→先頭が「10」で始まる。65,536のホストアドレス
クラスC→先頭が「110」で始まる。256のホストアドレス
クラスD、E→クラスDはマルチキャスト用でEは実験用
   ・IP通信の種類
    IPマルチキャスト→IGMPで1対nの通信を行う。
    IPブロードキャスト→ネットワーク内の全ホストに通知
    IPローカルブロードキャスト→自ネットワーク内全ホストに通知
特別なIPアドレス
ホスト部がすべて1のアドレス→ブロードキャストアドレス
ホスト部がすべて0のアドレス→ネットワークアドレス
自組織内のみで利用する→プライベートIPアドレス
自分自身を表す→ループバックアドレス

3:IPアドレス枯渇問題に対する技術
・プライベートIPアドレス
パブリックネットワークとは別の組織内のみで使用できる
IPアドレス体系を割り当てることで利用できるIPアドレスを
増やす。
NAT
プライベートアドレスはそのままでは外部と通信できないため
グローバルIPアドレスに変換して通信を行う。その変換を行う
仕組みをNATという。
接続する台数分のグローバルIPが必要

IPマスカレード(NAPT)
NATにTCP/UDPポートを組合せてグローバルIPに変換する。
1個のIPアドレスでOK 
※NAT、NAPTともインターネット側からの接続に制限があるため
変換ルールを設定しないと通信に不具合が生じる。
CIDR
クラスCのIPアドレスを束ねてスーパーネットを作るための手法
経路情報を節約することができる
IPv6
32ビットのIPアドレスを128ビットに拡張した。
10進表記ではなく16進表記。
例)FFFF:FFFF:0000:0000:0000:0000:0000:FFFF
0は省略してもOK、連続する0は削除することもできる。
   ユニキャストアドレス:1つのノードに対して割り当てる。
エニィキャストアドレス:ユニキャストアドレスを複数ノードに割り当てる。
マルチキャストアドレス:ノードをグループ化する際に使用する。
IPSec標準対応:セキュリティ対応が強化されている。

 4:データリンク層との接続
MACアドレス
  イーサーネットやFDDIに使用される物理アドレス
データリンク層のアドレスに当たる。
ルータを超えた場合にブロードキャストドメイン
のみで使用できるアドレスが必要。
   48ビットのアドレス長(前半22ビットでベンダーIDを表す)
ARP
IPアドレスからMACアドレスを取得するためのプロトコル
通信にはバースト特性があるため、同一ノードに通信を
行う可能性が高い。そのため一定時間ARPキャッシュを保持する。
ProxyARP  何らかの理由で通常のARP応答が期待できない場合に
代理でARP返答を返す機能のことを言う。
管理が複雑になりやすく通信トラブルを招く。
ICMP
IPレベルで送達確認を行いたい場合に用いる
プロトコル。IPパケットのペイロードに埋め込まれ
送信される。
pingコマンドやtracerouteコマンドで使用されている。

5:TCPとUDP
 ・トランスポート層
データ送信の確実性、信頼性、品質を守るレイヤ
 ・ポート番号
トランスポート層でアプリケーションの識別に使用する番号
よく利用されるものはWell-Knownポートとして規定されている。 
 ・UDP
コネクションレス型でアプリケーションの識別機能のみ提供する。
UDPヘッダは64ビットで構成されていてシンプル
リアルタイム通信に向く
RTPRTCPと組み合わせて使われることもある。
 ・TCP
コネクション型の通信で伝送管理機能が標準装備されている。
3ウェイハンドシェイクでコネクションを確立してデータをやりとりする。
UDPと異なりTCPヘッダ内にシーケンス番号が存在する。
データ送信に失敗したら再送を行う。

6:伝送効率制御
 ・スライディングウインドウ
  3ウェイハンドシェイクの場合ACKの受信を待たないと
次のデータを送信できない。ウィンドウという概念を設けて
一度に複数のデータを送信して伝送効率を高めている。
高速再送制御
再送までのタイミングが早くなる。
ACK喪失時でも正常受信データを判別できる。  
フロー制御
最初はウィンドウサイズを1にして送信し、大丈夫そうであれば
ウィンドウサイズを大きくしていくスロースタートといった手法等で
ネットワークの輻輳を制御する。
遅延確認応答
ACKを遅延させることでウィンドウサイズを小さくしないようにする手法
これにより一度に送信できるウィンドウサイズが大きくなり、データ送信
効率が高まる。
ピギーバック
ACKとプロトコル応答を同時に行うことで通信量を抑制する手法

7:ルーティング技術
自律システム(AS)
IGP:自律システム内のルーティング(RIP,RIP2,OSPF)
EGP:自律システム同士のルーティング(BGP-4)
ディスタンスベクタ
宛先ネットワークまでの経路を方向と距離のみで判断する。
シンプルだが実態に即さない経路を選択してしまう。
リンクステート
トポロジ情報をルーター内に保持して経路を計算する。
情報が大きくなり処理負荷が増大してしまう。
  ・経路情報のループ  スプリットホライズン=>教えてもらった方へは該当経路を返さない。
ポイズンリバース=>到達不能情報を強制的に伝える。
バスベクタ型アルゴリズム
AS間の経路リストを用いてルーティングする。






 8:アプリケーションに対応した技術
SMTP
電子メールを送信するためのプロトコル。
メール送信ノードと受信ノード間でコネクションを
張ってやり取りする。
MIME
ASCIIコードしか使用できないSMTPでASCIIコード
以外を使用できるようにした規格 
S/MIME
MIMEに暗号化と電子署名の機能を盛り込んだもの
電子署名はX.509形式である必要がある。
  ・PoPbeforeSMTP
  SMTPには認証機能がないのでPOPの認証を用いて
POP認証後にSMTPでメール送信する形式のこと。
SMTPAuthentication
SMTPに直接認証機構を組み込んだ仕組み
POP3
メールサーバに蓄積されたメールをクライアントに
ダウンロードするためのプロトコル、近年はパスワードを
平文で流さないようにするAPOPも使用されている。
  ・IMAP4
POPの次世代メールプロトコル、サーバ側でメールボックスを
管理してモバイル端末等でメールを閲覧する。


9:名前解決およびアドレス管理技術
DNS
IPネットワークではIPアドレスでやり取りを
行うが人間にわかりやすいように別名で
やり取りを行うためのシステム
ドメイン名
DNSで解決する名前のこと。ドメイン名は一意性が保証されている。
リゾルバ
DNSサーバに対して名前解決を依頼するDNSクライアント
  ・LDAP
各種の情報資源を検索するための仕組み。X.500 を簡略化した
プロトコル
DHCP
IPアドレスを自動採番するためのプロトコル。下位プロトコルはUDP
BOOTP
DHCPの前身のプロトコル。RARPTFTPで実装されていたものを
より容易に行えるように規定した。

10:ファイル転送技術
HTTP
構造化文書であるHTMLを送受信するために設計されたプロトコル
下位プロトコルとしてはSMTPと同様TCPとなっていてWebブラウザ
対話型の処理を行う。
FTP
IPネットワーク上でファイルをやり取りするためのプロトコル
平文でデータやり取りするため危険。PASVモードでファイアウォール
経由でもFTPが可能
Telnet 
  遠隔地のPCにログインし入力コマンドを送信して実行する。
仮想端末としてVT100がよく使われる。 平文でデータが流れるので
脆弱性がある。
  ・SIP
VoIP実装で必要となるセッションの開始と終了をRSVPを用いて
制御する。 音声パケットの転送はRTPで行う。
VoIP実現のためには電話番号とIPの対応付けや帯域管理を
行うゲートキーパーが必要


むちゃむちゃ盛り沢山でした。というより頭がオーバーヒート
起こしています。とりあえずIPのマスク計算とかCIDR部分や
IIPとかTCP、UDPのヘッダ部分。今年はIPv6とかも押さえたほうがいいかも
IP技術を使ったアプリ層のサーバ群はいずれ手を使って覚えないと
理解出来ないかなという気がします。
 
【参考資料】
http://itpro.nikkeibp.co.jp/article/COLUMN/20070619/275208/?ST=selfup#tcp
http://www.kanzaki.com/works/archives/macfan/extranet.html
http://ja.wikipedia.org/wiki/Next_Generation_Network
http://www.blwisdom.com/itbz/04/
http://www.fc-lab.com/network/program/berkley/connection.html
http://d.hatena.ne.jp/linus404/20050703/p1
http://atnetwork.info/tcpip/tcpip33.html
http://atnetwork.info/tcpip/tcpip34.html
http://k-tai.impress.co.jp/cda/article/keyword/30985.html
http://yamachan.shse.u-hyogo.ac.jp/in/chapter1-1-2.pdf 
http://www.atmarkit.co.jp/fnetwork/rensai/router01/router01.html
http://y-kit.jp/inet/page/ipaddress.htm
http://www.nic.ad.jp/ja/ip/
http://ipaddr.kaone.net/
http://www.itbook.info/study/p54.html
http://www.atmarkit.co.jp/fwin2k/win2ktips/087findhostname/087findhostname.html
http://pc.user-infomation.com/web_kisotisiki/ki_04.htm
http://japan.internet.com/linuxtutorial/20080815/5.html
http://keicode.com/netprimer/np13.php
http://www.atmarkit.co.jp/fwin2k/network/baswinlan008/baswinlan008_01.html
http://itpro.nikkeibp.co.jp/article/COLUMN/20080715/310822/
http://www.atmarkit.co.jp/fwin2k/network/baswinlan008/baswinlan008_01.html
http://win.kororo.jp/archi/tcp_ip/net_bro.php
http://www.mm-labo.com/computer/tcpip/ipaddress/broadcast.html
http://oku.edu.mie-u.ac.jp/~okumura/networking/private-ip.html
http://www.atmarkit.co.jp/fwin2k/win2ktips/803localhost/localhost.html
http://itpro.nikkeibp.co.jp/network/v4kokatsu/index.html
http://www.nic.ad.jp/ja/ip/ipv4pool/
http://y-kit.jp/inet/page/masquerade.htm
http://www.asi.co.jp/techinfo/unix/nat.html
http://docs.olab.org/santa/netmemo/nat.html
http://eazyfox.homelinux.org/Security/Security13.html
http://itpro.nikkeibp.co.jp/members/NNW/NETPOINT/20040921/1/

http://www.mrl.co.jp/download/manual-online/optits/manual/docs/netlista.htm#list
http://yamagata.int21h.jp/tool/cidrcalc/
http://lan-pc.pc-beginner.net/bb_router/bb_router_napt.html
http://japan.internet.com/linuxtutorial/20080815/5.html
http://itpro.nikkeibp.co.jp/article/COLUMN/20060908/247582/
http://www.vwnet.jp/IPv6/IPv6Start.asp
http://itpro.nikkeibp.co.jp/article/COLUMN/20090907/336622/
http://ascii.jp/elem/000/000/614/614207/
http://blogs.technet.com/b/jpntsblog/archive/2010/06/11/ipv6-ipv6.aspx
http://zettai-non-sugar.blogspot.com/2010/08/ipv6.html
http://www.nic.ad.jp/ja/materials/iw/2009/proceedings/h2/
http://jibun.atmarkit.co.jp/lskill01/rensai/ccnatai32/01.html
http://net-juku.org/tcpip/tcpip62.html
http://net-juku.org/tcpip/tcpip63.html
http://itpro.nikkeibp.co.jp/members/ITPro/ITBASIC/20010507/1/
http://www.atmarkit.co.jp/fnetwork/netcom/arp/arp.html
http://www.atmarkit.co.jp/fwin2k/network/baswinlan011/baswinlan011_03.html
http://www.n-study.com/network/2001/01/arp.html
http://d.hatena.ne.jp/nattou_curry_2/20090810/1249915272
http://www.geocities.co.jp/SiliconValley-Sunnyvale/9601/education/protocol/address.html
http://www.wakhok.ac.jp/~kanayama/summer/02/site/node114.html
http://www.asahi-net.or.jp/~aa4t-nngk/ipttut/output/icmpheaders.html
http://www.vacant-eyes.jp/refs/well-knownport.aspx
http://y-kit.jp/inet/page/port.htm
http://net-newbie.com/tcpip/tcp/udp.html
http://japan.internet.com/linuxtutorial/20080926/5.html
http://www.it-square.co.jp/html/newpage.html?code=38
http://www.kogures.com/hitoshi/webtext/nw-tcp/index.html
http://atnetwork.info/tcpip/tcpip104.html
http://www.atmarkit.co.jp/fnetwork/rensai/tcp10/02.html
http://www.7key.jp/nw/tcpip/tcp/tcp2.html
http://tiki.is.os-omicron.org/tiki.cgi?c=v&p=TCP%2F%ED%D5%ED%D4%C0%A9%B8%E6
http://www.ntt.co.jp/journal/0306/files/jn200306050.pdf
http://www.ie.u-ryukyu.ac.jp/~morikazu/Class/Network1/Slide6.pdf
http://www11.plala.or.jp/kita-kew/PC/network_2.html
http://www.infraexpert.com/study/tcpip9.html
http://www.asahi-net.or.jp/~aa4t-nngk/ipttut/output/tcpconnections.html
http://onias.sakura.ne.jp/Network_Material/TCP.htm
http://www.atmarkit.co.jp/fnetwork/rensai/iprt01/iprt01.html
http://gihyo.jp/admin/serial/01/net_prac_tech/0011
http://itpro.nikkeibp.co.jp/article/COLUMN/20060125/227895/
http://www.atmarkit.co.jp/fnetwork/rensai/iprt04/iprt01.html
http://www.atmarkit.co.jp/fnetwork/rensai/iprt05/iprt01.html
http://www.nic.ad.jp/ja/newsletter/No35/0800.html
http://www.infraexpert.com/study/rp5bgp21.htm
http://www.geekpage.jp/technology/ip-base/mail-2.php
http://atnetwork.info/tcpip2/tcpip230.html
http://www.7key.jp/nw/technology/protocol/smtp.html
http://www.infraexpert.com/study/tcpip17.html
http://www.atmarkit.co.jp/fnetwork/rensai/tcp03/01.html
http://ascii.jp/elem/000/000/589/589668/
http://www.atmarkit.co.jp/fnetwork/trend/20080204/01.html
http://www.7key.jp/nw/technology/protocol/pop3.html
http://x68000.q-e-d.net/~68user/net/pop3-1.html
http://www.atmarkit.co.jp/fnetwork/rensai/tcp23/01.html
http://atnetwork.info/tcpip2/tcpip235.html
http://www.7key.jp/nw/technology/protocol/imap4.html
http://bb.watch.impress.co.jp/cda/bbword/8007.html
http://www.atmarkit.co.jp/fnetwork/rensai/dns01/dns01.html
http://win.kororo.jp/archi/tcp_ip/dns.php
http://atnetwork.info/tcpip2/tcpip207.html
http://ja.wikipedia.org/wiki/DNS%E3%82%B5%E3%83%BC%E3%83%90
http://www.nic.ad.jp/ja/dom/basics.html
http://ja.wikipedia.org/wiki/Fully_Qualified_Domain_Name
http://jprs.jp/
http://www.atmarkit.co.jp/fnetwork/rensai/dns01/dns-record.html
http://www.domainmatome.info/modules/pukiwiki/?DNS%A5%EC%A5%B3%A1%BC%A5%C9
http://ascii.jp/elem/000/000/458/458858/
http://www.atmarkit.co.jp/flinux/rensai/root02/root02a.html
http://thinkit.co.jp/free/tech/18/1/
http://gihyo.jp/admin/serial/01/ldap
http://ad.robata.org/ad_ldap.html
http://www.atmarkit.co.jp/fnetwork/netcom/netcom06/netcom01.html
http://itpro.nikkeibp.co.jp/article/COLUMN/20060215/229396/
http://www.ccjc-net.or.jp/~kouza/199805/dhcp1.html
http://linux.kororo.jp/cont/server/dhcpd.php
http://www.picfun.com/lan09a.html
http://www.atmarkit.co.jp/fwin2k/win2ktips/556dhcprelay/dhcprelay.html
http://www.infraexpert.com/study/dhcp3.htm
http://www.7key.jp/nw/tcpip/ip/relayagent.html
http://atnetwork.info/tcpip1/tcpip193.html
http://technet.microsoft.com/ja-jp/library/cc781243%28WS.10%29.aspx
http://www.7key.jp/nw/technology/protocol/http1.html
http://www.infraexpert.com/study/tcpip16.html
http://mimibukuro.ddo.jp/memo/HTTP_error.html
http://itpro.nikkeibp.co.jp/article/COLUMN/20071119/287558/
http://yamachan.shse.u-hyogo.ac.jp/NetSociety/chapter4.pdf
http://www.atmarkit.co.jp/flinux/rensai/apache02/apache02.html
http://web-tan.forum.impressrd.jp/e/2010/01/12/7156
http://j-net21.smrj.go.jp/develop/digital/entry/002-20090204-02.html
http://www.keyman.or.jp/3w/prd/83/30002783/
http://www.wakasato.jp/learn/nepc/course2/chapter05/section04.html
http://j-net21.smrj.go.jp/develop/digital/entry/002-20100310-01.html
http://pc.nikkeibp.co.jp/article/NPC/20070130/260054/
http://sasuke.main.jp/ftpcommand.html
http://ash.jp/net/ftp_command.htm
http://www.atmarkit.co.jp/fwin2k/win2ktips/231telnetcmd/telnetcmd.html
http://ash.jp/net/telnet_http.htm
http://www.ideaxidea.com/archives/2008/04/telnet.html
http://www.wakasato.jp/learn/nepc/course2/chapter05/section06.html
http://pc.nikkeibp.co.jp/article/NPC/20070130/259596/
http://ossforum.jp/en/node/915
http://www.nic.ad.jp/ja/newsletter/No29/100.html
http://www.atmarkit.co.jp/channel/voip/voip.html
http://www.keyman.or.jp/3w/prd/35/30003135/
http://intuniv.cs.shinshu-u.ac.jp/Lecture/VoIP/SIP/reqres.html
http://www.st-asterisk.com/archives/16
http://itpro.nikkeibp.co.jp/article/COLUMN/20060330/233889/
http://www.keyman.or.jp/3w/prd/95/30002095/

コメント

このブログの人気の投稿

証券外務員1種勉強(計算式暗記用メモ)

GASでGoogleDriveのサブフォルダとファイル一覧を出力する

マクロ経済学(IS-LM分析)