bind 0.0.0.0的作用是什么呢?
2024-09-19 22:15:06
背景描述:
今天在看redis的内容,看到同事在配置文件中将bind配置为0.0.0.0进行监听,不明白什么意思就查询了下,在此记录下。
解释:
0.0.0.0在服务器的环境中,指的就是服务器上所有的ipv4地址,如果机器上有2个ip 192.168.30.10 和 10.0.2.15,redis在配置中,如果配置监听在0.0.0.0这个地址上,那么,通过这2个ip地址都是能够到达这个redis服务的。同时呢,访问本地的127.0.0.1也是能够访问到redis服务的。
测试验证:
1.绑定到0.0.0.0
[aiprd@hadoop1 redis]$ src/redis-server ./redis.conf
[aiprd@hadoop1 redis]$ ps -ef | grep redis
aiprd : ? :: src/redis-server 0.0.0.0:
aiprd : pts/ :: grep redis
2.本地ip地址
[aiprd@hadoop1 redis]$ ip a
: lo: <LOOPBACK,UP,LOWER_UP> mtu qdisc noqueue state UNKNOWN
link/loopback ::::: brd :::::
inet 127.0.0.1/ scope host lo
inet6 ::/ scope host
valid_lft forever preferred_lft forever
: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether ::::8b:7e brd ff:ff:ff:ff:ff:ff
inet 10.0.2.15/ brd 10.0.2.255 scope global eth0
inet6 fe80::a00:27ff:fe21:8b7e/ scope link
valid_lft forever preferred_lft forever
: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :::9f::be brd ff:ff:ff:ff:ff:ff
inet 192.168.30.10/ brd 192.168.30.255 scope global eth1
inet6 fe80::a00:27ff:fe9f:16be/ scope link
valid_lft forever preferred_lft forever
备注:本地地址127.0.0.1、10.0.2.15、192.168.30.10
3.分别通过3个ip地址进行访问
[aiprd@hadoop1 redis]$ src/redis-cli
127.0.0.1:> auth yksSLR7AU#7G6Wz
OK
127.0.0.1:> exit
[aiprd@hadoop1 redis]$
[aiprd@hadoop1 redis]$ src/redis-cli -h 192.168.30.10
192.168.30.10:> auth yksSLR7AU#7G6Wz
OK
192.168.30.10:> exit
[aiprd@hadoop1 redis]$ src/redis-cli -h 10.0.2.15
10.0.2.15:> auth yksSLR7AU#7G6Wz
OK
10.0.2.15:> exit
备注:通过3个地址是都能够访问的。
4.绑定到192.168.30.10地址上
[aiprd@hadoop1 redis]$ src/redis-server ./redis.conf
[aiprd@hadoop1 redis]$ ps -ef | grep redis | grep -v grep
aiprd : ? :: src/redis-server 192.168.30.10:
5.分别通过以上的地址进行访问
[aiprd@hadoop1 redis]$ src/redis-cli
Could not connect to Redis at 127.0.0.1:: Connection refused
Could not connect to Redis at 127.0.0.1:: Connection refused
not connected> exit
[aiprd@hadoop1 redis]$ src/redis-cli -h 10.0.2.15
Could not connect to Redis at 10.0.2.15:: Connection refused
Could not connect to Redis at 10.0.2.15:: Connection refused
not connected> exit
[aiprd@hadoop1 redis]$ src/redis-cli -h 192.168.30.10
192.168.30.10:> auth yksSLR7AU#7G6Wz
OK
192.168.30.10:>
备注:发现绑定到192.168.30.10之后,只有这个地址是可以访问,但是呢,访问127.0.0.1都是访问不到的。
小结:
所以:综上,如果绑定到0.0.0.0那么所有机器上的地址都可以访问服务,如果绑定到特定的ip那么只能是特定的ip能够到达redis服务。
文档创建时间:2019年5月27日11:48:12
最新文章
- apache2错误日志在哪,可以看到php错误
- winform学习之----图片控件应用(上一张,下一张)
- 【转载】wireshark:no interface can be used for capturing in this system with the current configuration
- Java创建WebService服务及客户端实现
- scribe日志分析工具安装
- 求和问题总结(leetcode 2Sum, 3Sum, 4Sum, K Sum)
- [修]开启MySQL远程访问权限 允许远程连接
- codeforces 369 div2 C dp
- PAT (Advanced Level) 1057. Stack (30)
- Leetcode题解(23)
- Python——collections模块(扩展数据类型)
- ubuntu 16.04 搭建tigervnc
- 如何使用wepy和 vant-weapp开发小程序
- MFC控件编程进度条编写
- [转]GitLab Continuous Integration (GitLab CI/CD)
- shell编程学习笔记(九):Shell中的case条件判断
- flask 自定义验证器(行内验证器、全局验证器)
- Web jsp开发学习——Servlet提交表单时用法
- iredmail安装问题
- outlook还原初始设置