当前位置:网站首页>127.0.0.1、0.0.0.0和localhost
127.0.0.1、0.0.0.0和localhost
2022-06-30 08:33:00 【进击的豌豆哥】
转载于:https://zhuanlan.zhihu.com/p/439510282
我们先来看下共同点:
- 都属于特殊地址。
- 都属于A类地址。
- 都是IPV4地址。
接下来我们分别看下这三个地址:
0.0.0.0
首先,0.0.0.0是不能被ping通的。0.0.0.0称为“unspecified”,即未指定(即无效的,无意义的)地址。从功能上看,一般用于某些程序/网络协议中不便使用具体ip的特殊情况(说白了就是一个用于某些比较坑的情况的“占位符”),比如DHCP客户端还未获取到ip的时候规定使用0.0.0.0作“源地址”,或者在服务器中,0.0.0.0并不是一个真实的的IP地址,它表示本机中所有的IPV4地址。服务器不指定在哪个网卡上监听时,也使用0.0.0.0,这个时候监听本机中所有IP的端口。
用途
- 用作服务端,表示本机上的任意IPV4地址。
127.0.0.1
首先我们要先知道一个概念,凡是以127开头的IP地址,都是回环地址(Loop back address),其所在的回环接口一般被理解为虚拟网卡,并不是真正的路由器接口。
所谓的回环地址,通俗的讲,就是我们在主机上发送给127开头的IP地址的数据包会被发送的主机自己接收,根本传不出去,外部设备也无法通过回环地址访问到本机。
最后127.0.0.1属于{127,}集合中的一个,而所有网络号为127的地址都被称之为回环地址,所以回环地址!=127.0.0.1,它们是包含关系,即回环地址包含127.0.0.1。
用途
- 回环测试,通过使用ping 127.0.0.1 测试某台机器上的网络设备,操作系统或者TCP/IP实现是否工作正常。
- DDos攻击防御:网站收到DDos攻击之后,将域名A记录到127.0.0.1,即让攻击者自己攻击自己。
- 大部分Web容器测试的时候绑定的本机地址。
localhost
相比127.0.0.1,localhost具有更多的意义。localhost是个域名,而不是一个ip地址。之所以我们经常把localhost与127.0.0.1认为是同一个是因为我们使用的大多数电脑上都讲localhost指向了127.0.0.1这个地址。
但是localhost的意义并不局限于127.0.0.1。
localhost是一个域名,用于指代this computer或者this host,可以用它来获取运行在本机上的网络服务。
在大多数系统中,localhost被指向了IPV4的127.0.0.1和IPV6的::1。
127.0.0.1 localhost
::1 localhost
所以,在使用的时候要注意确认IPV4还是IPV6
总结
127.0.0.1 是一个环回地址。并不表示“本机”。0.0.0.0才是真正表示“本网络中的本机”。
在实际应用中,一般我们在服务端绑定端口的时候可以选择绑定到0.0.0.0,这样我的服务访问方就可以通过我的多个ip地址访问我的服务。
比如我有一台服务器,一个外放地址A,一个内网地址B,如果我绑定的端口指定了0.0.0.0,那么通过内网地址或外网地址都可以访问我的应用。但是如果我之绑定了内网地址,那么通过外网地址就不能访问。 所以如果绑定0.0.0.0,也有一定安全隐患,对于只需要内网访问的服务,可以只绑定内网地址。
(127.0.0.1只到内核的协议栈,0000要走一趟网卡,网卡中断)
边栏推荐
- 2021-04-29
- MIME type Encyclopedia
- CUDA realizes matrix multiplication
- 【NVMe2.0b 14-8】Set Features(下篇)
- 1. Problems related to OpenGL window and environment configuration
- vite项目require语法兼容问题解决require is not defined
- How can we get a satisfactory salary? These routines still need to be mastered
- 电流探头电路分析
- Wechat official account third-party platform development, zero foundation entry. I want to teach you
- MIME类型大全
猜你喜欢

What are the Amazon evaluation terms?

Codeworks 5 questions per day (1700 for each) - the third day

微信公众号第三方平台开发,零基础入门。想学我教你啊

Wechat applet reports errors using vant web app

Redis design and Implementation (V) | sentinel sentry

【NVMe2.0b 14-7】Set Features(上篇)

Sword finger offer II 075 Array relative sort (custom sort, count sort)

【NVMe2.0b 14-3】Doorbell Buffer Config command、Device Self-test command
![[kotlin collaboration process] complete the advanced kotlin collaboration process](/img/43/9c4b337caf406537e317dea2ed5f17.png)
[kotlin collaboration process] complete the advanced kotlin collaboration process

Axure制作菜单栏效果
随机推荐
TiDB v6.0.0 (DMR) :缓存表初试丨TiDB Book Rush
vim 从嫌弃到依赖(21)——跨文件搜索
Is the reverse repurchase of treasury bonds absolutely safe? How to open an account online
2021-02-19
JS中的this指向
MIME类型大全
Detectron2 source code reading 2--- using the configurable decorator to build the dataloader
Wsl2 using GPU for deep learning
What are the Amazon evaluation terms?
[untitled]
Applet uses QR code plug-in
从0开始构建一个瀚高数据库Docker镜像
Axure制作菜单栏效果
Redis design and Implementation (IV) | master-slave replication
Source code interpretation of detectron2 1--engine
14岁懂社会-《关于“工作的幸福”这件事儿》读书笔记
Codeworks 5 questions per day (1700 for each) - the third day
This point in JS
Detailed explanation of pytoch's scatter function
VIM from dislike to dependence (21) -- cross file search