Docker容器技术:基础网络知识回顾

133 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第16天,点击查看活动详情

1. 基于数据包通信方式

例如我们访问docker网站等web服务器,需要浏览器和服务器有一种协议吗,一般是http协议。

1.1 网络分层

然后有了协议之后,数据包如何打包呢,这涉及到网络分层概念:

目前一般Tcp/Ip五层用的比较多。

Http在应用层,主要传输HTML页面所需要的数据。

1.2 路由

接着数据包如何到达远程的服务器呢?这里就需要路由的概念了:

这个路由其实是很复杂的,有很多协议,这里就不展开了,但是这里需要关注一下IP地址的关系

1.3 IP地址

路由其实就是到达一个中间的节点,例如无线路由器,然后会继续看IP地址,在往对应地方跳。

公有IP地址可以访问互联网,但是是惟一的,不可复用。目前Ipv4已经快耗尽了。

私有IP地址可以重复使用,仅供内部使用。

这里私有IP地址如何访问互利网呢?这里就需要借助NAT技术:

这个技术作为一个翻译,例如校园网有多个出口,有公有IP地址,其他内部机器都是私有IP地址。接着出口路由器会做转换,记住私有地址和端口号翻译为公有的,然后发出去。返回的数据包也会查表翻译回去,回到发出的机器!

2. 两个工具Ping和telnet

通过ping验证对方IP地址能不能通。

注意有时候发现对方没有回复,这个不能保证是因为对方的原因,可能是本身,路由,机器防火墙等等原因。

可以验证地址上的对应端口服务是否可用。

上面第二天就是可以Ping通,但是telnet不行,可达但不可用,大部分是因为防火墙。

上述就说明了服务器是禁止ping的,但是服务是可以访问的

3. 抓包工具wireshark

Capture面板内可以到本地所有的网卡,包括本机,虚拟机,容器里面的。例如第一个wifi有一些曲线,表示这个接口上面有数据包,点击进去可以看详情:

我们刚才telnet的数据包也可以过滤看到:

\