Powered by SmartDoc

20031128 (2003/11/28)
Ver. 1.0

2003年11月28日
栗野 俊一
kurino@math.cst.nihon-u.ac.jp
http://edu-gw2.math.cst.nihon-u.ac.jp/~kurino/2003/ccna/ccna.html
情報通信ネットワーク論2003/11/28 の資料

目次

アプリケーション層のプロトコル

TCP/IP のアプリケーション層

TCP/IPのアプリケーション層は、OSI参照モデルの三つの層がまとまったもの(1)

用途に応じて作成され、必要に応じて、一つ下位のトランスポート層を利用する。

UDPを利用するもの
TCPを利用するもの
  1. と書くと、聞こえが良いが、実際は、区別されていない/できないということ。
  2. 通信相手のLogging等、利用される機会が増加しつつある。特に、逆引ができないと、Serviceを提供しないServerもある。
  3. 元々は、遠距離の計算資源の利用のためのアプリケーションだったが、データをそのままやりとりするので、Secutiry上の観点から、その目的で利用することは少い。

    むしろ、別の目的( TCPを用いたプロトコルの確認)に利用されることが多くなってきた。

  4. sshには、tunnelingやport forwardingなど、単なる遠隔操作以上の様々な機能があり、それが目的で利用されることも多々ある。
  5. 元々が単純な設計なので、解りやすいが、効率が大変悪い。再設計が望まれているが、既に普及しすぎているために、難しいのが難点。

    現在は、単なるWeb Dataでなく、(FireWallを越て通信するための..)様々な通信手段の中間トランスポート層としても利用されるようになってきている。

  6. 認証の機能がないので、安全な状況でしか利用できない。
  7. 一般には、boot時。
  8. これは、歴史的な理由で、以前は、smtpに認証機能がなかったためで、自分のe-mailを守ためのに認証機能のあるプロトコルが要求される。
  9. POP Serverは、(smtpを利用して受信を行うために..) MTAを動かすが、MTAは、単にMailを受け取り、DISK ( Spoolと呼ぶ)に保存するだけ。

    要求をうけると、Spoolから、e-mailとりだし、Userに送るのがPop Serverの仕事。

Well Known Port Number

Client/Server Modelで、通信を行うためには、ClientがServerのPort Number (と、もちろん、IP Address )を知らなければ( TCP/UDPで.. )通信を開始することができない。

そこで、Service毎に典型的なPort Number ( 1023以下(10))を定義(11)し、特に、指定がなければ(12)、そのServiceには、そのPort Numberを利用するように設計されている。

well known port
プロトコル UDP/TCP Port Number
ftp-data UDP 20
ftp TCP 21
ssh TCP 22
telnet TCP 23
smtp TCP 25
DNS UDP 53
tftp TCP 69
http TCP 80
pop-3 TCP 110
snmp UDP 161
https TCP 443
  1. この制限があるのは、unixでは、1023以下のPortを利用するには、Root権限が必要だったということからきている。

    Server Processは、悪用を防ぐためにRootにしか、利用できないように工夫されていたわけだ。

    したがって、1023のPortで動いているServerは、管理されているとみなすことができるので、重要なServiceは、1023以下で動かすことが推奨されたわけだ。

    しかし、他のOSには、そのような制約がなく、1023以下だから安全が保証されているわけでばなくなっているし、また、逆に、Server Processを経由して、Attackが行われるので、むしろ、root権限でない状態が望ましくなりつつあり、この制約は意味を失いつつある。

  2. どのServiceにどのPort Numberを利用するかは、中央管理されており、現在は、ICANNが行っている。

    割当られたPort NumberのListは、RFCの形で提供されており、unix OSなどでは、/etc/servicesに、その一部が記載され、利用されている。

  3. 逆に指定すれば、他のPortも利用できることを意味する。もちろん、ServerとClientがそれを共に了解していることが前提である。

DNS

Domain Name

  1. その集合の要素はおそらく、Networkに関係した個体( Network器機、Host, User, Service, etc.. )。

Domain Name Data Base

Domain Name Server の役割

普通にName Serverと言えば、両方の機能を提供することを想定しているが、前者の機能だけのName Serverも多々ある。

  1. ので、できるだけ( Network的に.. )近くのName Serverを利用すべきである。

Domain 管理