-
127.0.0.1 vs 0.0.0.0 vs localhost区别:
https://cloud.tencent.com/developer/article/1031020
1.若只想本机使用的服务,不允许同局域网的设备访问,使用:127.0.0.1或localhost (前提是已经做了host映射);
2.若想本局域网的主机都可访问但外网不可访问,监听本主机的IP地址,例如:192.168.1.2;
3.若想本局域网的主机和外网都可访问,监听0.0.0.0就可以总结:
- localhost:理解为域名,在/etc/hosts中定义被映射为127.0.0.1
- 127.0.0.1:回环地址,会绕开tcp/ip协议栈下层,直接发回到本机
- 0.0.0.0:通配地址(对于路由器表示默认路由,对于服务器表示本机的所有ip地址)
ps: 所以在grpc的example中的地址为0.0.0.0:50051意思为本局域网的主机和外网都可以访问该服务
-
grpc名称解析:
https://github.com/grpc/grpc/blob/master/doc/naming.md
use URI syntax as defined in RFC 3986.
- 默认使用
dns:[//authority/]host[:port]
- unix系统可以用
unix:path
或unix://absolute_path
- gRPC C-core implementation可以使用
ipv4:address[:port][,address[:port],...]
或者ipv6:address[:port][,address[:port],...]
- 默认使用