127.0.0.1、0.0.0.0和本机IP地址的区别和使用
一、表面上的区别如下:
首先假设本机有多个网卡:eth0 :192.168.0.1 eth1:192.168.1.1 lo: 127.0.0.1
0.0.0.0 不能ping通,代表本机所有的IP地址;
监听127.0.0.1,创建Socket,那么用本机地址建立tcp连接不成功,反过来也是如此;也就是,监听时采用的地址为192.168.0.1,就只能用192.168.0.1进行连接。
而监听0.0.0.0创建Socket,那么无论使用127.0.0.1或本机ip都可以建立tcp连接,也就是不论通过127.0.0.1或192.168.0.1、192.168.1.1都能连接成功。
0.0.0.0建立tcp连接的时候也可以通过绑定IP_ADDR_ANY来实现。
那么问题来了,还回地址必须是127.0.0.1么?
答案:不是必须!IPv4 的环回地址是保留地址之一 127.0.0.1。尽管只使用 127.0.0.1 这一个地址,但地址 127.0.0.0 到 127.255.255.255 均予以保留。此地址块中的任何地址都将环回到本地主机中。此地址块中的任何地址都绝不会出现在任何网络中。
可以做一个简单的测试,用ssh root@127.2.3.4 然后登录看看是不是还是本机?不用修改ip,随意一个此范围内长度ip地址均可以ping通,并且通过ssh登录到本机。
二、事实上处理的区别,如下图:
他们是在数据链路层区别开的,路径很清楚,就不详述了。
127.0.0.1、0.0.0.0和本机IP地址的区别和使用的更多相关文章
- 【转自知乎】:localhost、127.0.0.1 和 本机IP 三者的区别?
作者:知乎用户链接:https://www.zhihu.com/question/23940717/answer/26230963来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...
- localhost,127.0.0.1 和 本机IP 三者的区别
localhost.127.0.0.1和本机IP的区别如下: 1.首先 localhost 是一个域名,在过去它指向 127.0.0.1 这个IP地址.在操作系统支持 ipv6 后,它同时还指向ipv ...
- 127.0.0.1和localhost和本机IP三者的区别
1,什么是环回地址??与127.0.0.1的区别呢?? 环回地址是主机用于向自身发送通信的一个特殊地址(也就是一个特殊的目的地址). 可以这么说:同一台主机上的两项服务若使用环回地址而非分配的主机地址 ...
- 127.0.0.1和localhost和本机IP三者的区别!
1, 先来说下回送地址(Loopback Address): 回送地址是主机用于向自身发送通信的一个特殊地址(也就是一个特殊的目的地址).可以这么说:同一台主机上的两项服务若使用回送地址而非分配的主机 ...
- java获取本机IP地址,非127.0.0.1
综合了网上找的代码,整理的,Windows和Linux都可以用. private static String getHostIp(){ try{ Enumeration<NetworkInter ...
- localhost/127.0.0.1/本机IP的区别以及端口号
端口号: http请求默认的端口是:80 PHPstudy中的端口号: Apache服务器的端口是:80 MySQL数据库的端口是:3306 PHP项目端口是:9000 禅道中的端口号: Apache ...
- Django使用本机IP无法访问,使用127.0.0.1能正常访问
使用Django搭建web站点后,使用127.0.0.1能访问,但是用自己本机IP却无法访问. 我们先到Django项目中找到setting文件 找到——> ALLOWED_HOSTS = [] ...
- [转]localhost、127.0.0.1和0.0.0.0和本机IP的区别
一.IP地址是什么 首先,我们要知道网络中的相互访问其实就是在进行两者间的数据传递.就如同送快递一样,快递发出只有知道你的住址信息,才能将快递送到你的手中.而在网络访问时,只有知道你在网络中的地址信息 ...
- Linux下获得本机IP(非127.0.0.1)
在Linux下用InetAddress.getLocalHost()方法获取本机IP地址,得到的结果总是:127.0.1.1.原来这个是etc/hosts文件中的配置,并非网卡的IP地址. 可用代码如 ...
随机推荐
- HtmlHelper使用大全
许多时候我们会遇到如下场景在写一个编辑数据的页面时,我们通常会写如下代码1:<inputtype ="text" value='<%=ViewData["ti ...
- ExtJs4.1中给列表的单元格设置颜色
如: 代码: { xtype: 'gridcolumn', ...
- VS发布,应用程序验证未成功。无法继续。
用VS2005发布客户端程序. 1.发布:点击工程项目属性,右键发布按钮,一切正常. 2.测试安装:提示如下提示框: 打开详细信息内容如下: 错误摘要 以下是错误摘要,这些错误的详细信息列在该日志的后 ...
- spring ehcache 页面、对象缓存
一.Ehcache基本用法 CacheManager cacheManager = CacheManager.create(); // 或者 cacheManager = CacheManager.g ...
- 电话薄设计--java
package com.hanqi.telbook; import java.util.Scanner; public class Menu { //主菜单 public void mainMenu( ...
- coursera机器学习-logistic回归,正则化
#对coursera上Andrew Ng老师开的机器学习课程的笔记和心得: #注:此笔记是我自己认为本节课里比较重要.难理解或容易忘记的内容并做了些补充,并非是课堂详细笔记和要点: #标记为<补 ...
- ubuntu16.04源码编译安装wine1.8.6安装不上引来的错误
configure: libxcomposite 64-bit development files not found, Xcomposite won't be supported. configur ...
- 猜拳游戏GuessGame源码
该游戏是一款比较不错的猜拳游戏GuessGame源码案例,GuessGame——猜拳游戏,这也是我自己的第一款休闲类的游戏案例,游戏实现也比较简单的,希望这个能够帮大家的学习和使用,更多安卓源码尽在源 ...
- Hive分析hadoop进程日志
想把hadoop的进程日志导入hive表进行分析,遂做了以下的尝试. 关于hadoop进程日志的解析 使用正则表达式获取四个字段,一个是日期时间,一个是日志级别,一个是类,最后一个是详细信息, 然后在 ...
- [转]ng-grid
本文转自:http://angular-ui.github.io/ui-grid/ Getting Started Steps for getting started (example on righ ...