• Linux:/etc/hosts中的127.0.0.1作用


    摘:http://cicikasa.blog.163.com/blog/static/137575355201021992145582/

    /etc/hosts中必然有一行为127.0.0.1,作用是什么呢?

    特点:

    (1)127.0.0.1不光是unix系统,linux也好,windows也好,都会有这个循回地址的。
    (2)在IP地址的规定中,第一部分是1~126为A类地址,128~191为B类地址,那么中间留的127.0.0.1被称为本地回环地址,主要作用有两个:一是测试本机的网络配置,能PING通127.0.0.1说明本机的网卡和IP协议安装都没有问题;另一个作用是某些SERVER/CLIENT的应用程序在运行时需调用服务器上的资源,一般要指定SERVER的IP地址,但当该程序要在同一台机器上运行而没有别的SERVER时就可以把SERVER的资源装在本机,SERVER的IP地址设为127.0.0.1也同样可以运行。

    (3)这个地址也是给本机loop back接口所预留的IP地址,它是为了让上层应用联系本机用的,如果没有这个loop back接口通常上层应用无法与自己联系,因为它仍然会把数据往IP层发送,数据到了IP层如果发现目的地是自己,则回被回环驱动程序送回。因此通过这个地址也可以测试TCP/IP的安装是否成功,就是驱动,网卡 都是否正常,但无法测试出具体TCP/IP的配置是否正确,也无法测试出网卡是否正常,因为数据在离开IP层之前就已经被送回去了。

    ======================================

    127.0.0.1常用来在本机测试各种网络服务,下面列举一些事例:
    1、测试sshd服务是否正常。在控制台上运行命令 ssh 127.0.0.1如果出现要求输入密码则表明sshd服务正常。
    2、测试ftp服务。在控制台运行命令 ftp 127.0.0.1 ,某个控制台的输出入下:
    -bash-3.00# ftp 127.0.0.1
    ftp: connect: Connection refused
    ftp>

    这个输出表明ftpd服务不正常,正常提供网络服务的ftp输出应该是这样的:
    -bash-3.00# ftp 127.0.0.1
    Connected to 127.0.0.1.
    220 (vsFTPd 2.0.5)
    Name (127.0.0.1:root):

    3、测试邮件服务。控制台执行命令 telnet 127.0.0.1 25 和 telnet 127.0.0.1 110即可判断邮件服务器的运行状态。
    4、查看系统都开放了那些端口。Nmap工具是个非常好的选择,输出结果远比netstat 直观。
    [root@netmonitor ~]# nmap 127.0.0.1

    Starting nmap 3.70 ( http://www.insecure.org/nmap/ ) at 2007-05-15 18:05 CST
    Interesting ports on localhost.localdomain (127.0.0.1):
    (The 1656 ports scanned but not shown below are in state: closed)
    PORT   STATE SERVICE
    21/tcp open  ftp
    22/tcp open  ssh
    25/tcp open  smtp
    80/tcp open  http

    Nmap run completed -- 1 IP address (1 host up) scanned in 0.224 seconds


    本地应用程序连接
    象apache+php+mysql这样的应用环境,应用程序与mysql数据库同时存在于同一个系统上面,常用环回地址127.0.0.1做套接字的ip地址。

    在这里可能有人会质疑:不用环回地址可不可以?答案是肯定的,用主机某个网络接口的ip就可以代替这个环回地址。那这里为什么还要强调这个环回地址呢?主要的原因是方便和稳定。网络接口的地址可能因为某种原因被更改(如服务器搬迁到别的地理位置),或者应用被迁移到另外的系统,象前面描述的apache+php+mysql 环境,由于使用了环回地址127.0.0.1,就不会受ip地址改变的影响,反之亦然。有的网络服务,对它自身所监听的网络接口---如把apache的监听设置成 “Listen 192.168.27.201:80”—依赖性比较高,一旦网络接口中断(down),服务本身也可能停止,如果采用默认的监听地址127.0.0.1就不会发生这种情况。

  • 相关阅读:
    套接字(socket)
    网络编程
    面向对象之反射
    面向对象的多态
    面向对象之封装
    面向对象之继承
    面向对象之编程思想
    python中的包
    python中的序列化模块
    正则表达式
  • 原文地址:https://www.cnblogs.com/xia/p/1946782.html
Copyright © 2020-2023  润新知