以前に[インターネットの個人情報(初心者向き)]で書いたように、http://www.yahoo.co.jp の www.yahoo.co.jp はヤフーのウェブサーバを示すアドレスであるということは書きました。しかし、では http:// は何でしょう?という話です。
この http:// は www.yahoo.co.jp のサーバにHPを見るサービスをお願いしますと頼んでいることを示しています。いわゆる、ポートと呼ばれるものです。
もう少し詳しくポートについて書きます。例えばあるサーバ A があったとします。サーバと呼ばれるからには、他のコンピュータBに対してサービスを行っていると言うことです。例えば、ウェブサーバと呼ばれるものはHPを見せてやるサービス、FTPサーバならばファイルの転送を行うサービス、プリンタサーバならば印刷を行うサービス、DNSサーバならばFQDNをIPアドレスに変換するサービスといった感じです。しかし、一台のサーバに一つのサービスしかないとは限りません。そのため、IPアドレスでコンピュータを指定し、ポートでどんなサービスを要求しているのかを指定しなければならないのです。つまり、http://www.yahoo.co.jp/ というHPアドレスは、www.yahoo.co.jp に httpd サービスを要求していると言うことです。
http:// の他にも、エクスプローラをつかって、ftp:// や telnet:// や \\ (Windowsのファイル共有サービス)といったサービスが使えます。
service name port/protocol aliases... #comment ------------ ------------- ---------- ---------- echo 7/tcp echo 7/udp discard 9/tcp sink null discard 9/udp sink null systat 11/tcp systat 11/tcp users daytime 13/tcp daytime 13/udp netstat 15/tcp qotd 17/tcp quote qotd 17/udp quote chargen 19/tcp ttytst source chargen 19/udp ttytst source ftp-data 20/tcp ftp 21/tcp telnet 23/tcp smtp 25/tcp mail time 37/tcp timserver time 37/udp timserver rlp 39/udp resource # resource location name 42/tcp nameserver name 42/udp nameserver whois 43/tcp nicname # usually to sri-nic domain 53/tcp nameserver # name-domain server domain 53/udp nameserver nameserver 53/tcp domain # name-domain server nameserver 53/udp domain mtp 57/tcp # deprecated bootp 67/udp # boot program server tftp 69/udp rje 77/tcp netrjs finger 79/tcp link 87/tcp ttylink supdup 95/tcp hostnames 101/tcp hostname # usually from sri-nic iso-tsap 102/tcp dictionary 103/tcp webster x400 103/tcp # ISO Mail x400-snd 104/tcp csnet-ns 105/tcp pop 109/tcp postoffice pop2 109/tcp # Post Office pop3 110/tcp postoffice portmap 111/tcp portmap 111/udp sunrpc 111/tcp sunrpc 111/udp auth 113/tcp authentication sftp 115/tcp path 117/tcp uucp-path 117/tcp nntp 119/tcp usenet # Network News Transfer ntp 123/udp ntpd ntp # network time protocol (exp) nbname 137/udp nbdatagram 138/udp nbsession 139/tcp NeWS 144/tcp news sgmp 153/udp sgmp tcprepo 158/tcp repository # PCMAIL snmp 161/udp snmp snmp-trap 162/udp snmp print-srv 170/tcp # network PostScript vmnet 175/tcp load 315/udp vmnet0 400/tcp sytek 500/udp biff 512/udp comsat exec 512/tcp login 513/tcp who 513/udp whod shell 514/tcp cmd # no passwords used syslog 514/udp printer 515/tcp spooler # line printer spooler talk 517/udp ntalk 518/udp efs 520/tcp # for LucasFilm route 520/udp router routed timed 525/udp timeserver tempo 526/tcp newdate courier 530/tcp rpc conference 531/tcp chat rvd-control 531/udp MIT disk netnews 532/tcp readnews netwall 533/udp # -for emergency broadcasts uucp 540/tcp uucpd # uucp daemon klogin 543/tcp # Kerberos authenticated rlogin kshell 544/tcp cmd # and remote shell new-rwho 550/udp new-who # experimental remotefs 556/tcp rfs_server rfs # Brunhoff remote filesystem rmonitor 560/udp rmonitord # experimental monitor 561/udp # experimental garcon 600/tcp maitrd 601/tcp busboy 602/tcp acctmaster 700/udp acctslave 701/udp acct 702/udp acctlogin 703/udp acctprinter 704/udp elcsd 704/udp # errlog acctinfo 705/udp acctslave2 706/udp acctdisk 707/udp kerberos 750/tcp kdc # Kerberos authentication--tcp kerberos 750/udp kdc # Kerberos authentication--udp kerberos_master 751/tcp # Kerberos authentication kerberos_master 751/udp # Kerberos authentication passwd_server 752/udp # Kerberos passwd server userreg_server 753/udp # Kerberos userreg server krb_prop 754/tcp # Kerberos slave propagation erlogin 888/tcp # Login and environment passing kpop 1109/tcp # Pop with Kerberos phone 1167/udp ingreslock 1524/tcp maze 1666/udp nfs 2049/udp # sun nfs knetd 2053/tcp # Kerberos de-multiplexor eklogin 2105/tcp # Kerberos encrypted rlogin rmt 5555/tcp rmtd mtb 5556/tcp mtbd # mtb backup man 9535/tcp # remote man server w 9536/tcp mantst 9537/tcp # remote man server, testing bnews 10000/tcp rscs0 10000/udp queue 10001/tcp rscs1 10001/udp poker 10002/tcp rscs2 10002/udp gateway 10003/tcp rscs3 10003/udp remp 10004/tcp rscs4 10004/udp rscs5 10005/udp rscs6 10006/udp rscs7 10007/udp rscs8 10008/udp rscs9 10009/udp rscsa 10010/udp rscsb 10011/udp qmaster 10012/tcp qmaster 10012/udp
この表は、Winodws NTならば
C:\WINNT\system32\drivers\etc\Services
のファイルです。windows の特殊なポートが結構あるので覚える必要はありません。参考までにと言うところです。
Well-known ポート(よく知られているポート)と呼ばれる以下のようなポートは押さえておきたいところです。
ポート番号 ポート名 用途 ---------- -------- ------ 20 ftp data File Transfer Protocolのデータ用ポート 21 ftp File Transfer Protocolの制御用ポート 23 telnet Telnet Protocol 80 HTTP HTTP 25 smtp Simple Mail Transfer Protocol 110 pop3 Post Office Protocol version 3 119 nntp Network News Transfer Protocol 123 ntp Network Time Protocol
Well-known ポートの表をみると、 エクスプローラはアドレスの頭に http:// がついている場合は自動で80番ポートにつないでいると言うことです。
もしもウェブサーバ(アドレス:www.xxx.ne.jp)が HTTPサービスをするソフトのポートが80番から8000番変えてあった場合を考えてみます。http://www.xxx.ne.jp/ では www.xxx.ne.jp サーバの80番ポートにアクセスしてしまい、80番ポートに待機しているソフト(サービス)がHTTPでなければ、もちろんエラーとなりHPは見れません。こんな時は、http://xxx.xxx.ne.jp:8000/ としてポートを指定します。すると80番ポートにはアクセスせずに8000番ポートにアクセスします。そしてめでたくHP を見ることが出来ます。
また、PROXYサーバ(proxy.xxx.ne.jp:8080)の設定によっては、http://proxy.xxx.ne.jp:8080/-_-http://www.xxx.ne.jp/ とアドレスを打つことによってPROXYサーバを経由してウェブサーバを見ることが出来ます。例えば、HPを大阪弁に変換するPROXYサーバを使うと
http://www.yorosiku.net:8080/-_-http://www3.tokai.or.jp/tokotoko/memo/menu/read3.html
といった具合になります。
参照 & サンクス : http://www.yorosiku.net/yan/osakaproxy.html
最近、会社で上司に「香車クンは最近もくもくと仕事してるね」なんて言われているが、実はこの読み物を書いていたりする今日このごろです(笑)