ポートについて(続 インターネットの個人情報)


■ http:// ってなに?

以前に[インターネットの個人情報(初心者向き)]で書いたように、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のファイル共有サービス)といったサービスが使えます。


■ 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番ポートにつないでいると言うことです。


■ HPアドレスの少しマニアックな使い方

もしもウェブサーバ(アドレス: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


■ おまけ

最近、会社で上司に「香車クンは最近もくもくと仕事してるね」なんて言われているが、実はこの読み物を書いていたりする今日このごろです(笑)




■ この読み物の用語集