网络应用程序需要得到的主机上的与网络有关的信息一般包括:主机、网络、协议和服务。这些信息中,主机和网络信息既可以通过域名系统(DNS)来获取,也可以通过相关的文件得到,而服务和协议信息一般要从相应得文件中读取。与网络信息有关的系统文件如下所示:
信息
|
文件名
|
相关函数
|
主机
|
/etc/hosts
|
gethostbyaddr,gethostbyname
|
网络
|
/etc/networks
|
getnetbyaddr,getnetbyname
|
协议
|
/etc/protocols
|
getprotobyname,getprotobynumber
|
服务
|
/etc/ser/vices
|
getservbyname,getservbyport
|
表
1:
与网络信息相关的四个文件
当在程序中调用
gethostbyname
或者
gethostbyaddr
的时候,
Linux
系统实际上是去
/etc/hosts
文件中匹配对应的主机名或者
ip
地址。
/etc/hosts
文件中的配置格式如下
:
IP Address
Hostname
Alias
127.0.0.1 Localhost local
192.168.1.202 LinuxServer server
………… ………… ………
127.0.0.1 Localhost local
192.168.1.202 LinuxServer server
………… ………… ………
最左边一列是主机
IP
信息,中间一列是主机名。任何后面的列都是该主机的别名。