hilyhoo
龙心飞扬

1、PC1要访问www.google.com,需要先知道对应IP地址。
域名只起助记作用,互联网访问通过IP进行。
比方,DNS是公民身份信息库,ip是身份证号,域名是该身份证号对应的人名。
当然,这个比方不是很恰当,域名也必须唯一的,与ip对应。

2、于是,PC1需要像DNS请求,查找www.google.com对应的ip,即发送dns请求:
PC1查找dns,发现不在同一个网络,不同网段需要网关转发。
但是,PC1需要先发送给网关,就需要先知道网关ip。
网关用于连接不同网络,并且有自己的IP,PC1需要知道网关ip。于是,通过ARP请求,像内网广播网关ip,网关回复mac地址。
PC1得到了网关的mac地址,将ip包封装到以太网帧,发送给网关。

3、网关收到该以太网帧,需要转交给dns服务器。
同样,网关可能需要发送ARP请求,得到dns的mac地址。

4、dns服务器收到请求,将www.google.com的ip发送给网关,网关再根据NAT会话表项,将目的ip转换成PC1的,再发送给PC1(此过程可能同样需要ARP请求)。

5、PC1收到了目的ip,再可以通过类似上面的方式发送请求(目的ip再可以直接填上获取的ip)。

其中:
ARP==>将ip广播,目的主机响应,反馈mac地址。


NAT==>在一个网络内部,自定义合法的ip地址。内网各主机通过内网通讯;与外网通过NAT转换,变成外网合法ip。这样,将内网与外网隔离,各个网络有自己的ip,既可以重叠,又可以通过少数几个ip与外网通讯,在ip大量缺乏的现代,节省了很多。

posted on 2009-08-15 16:30  hilyhoo  阅读(870)  评论(0编辑  收藏  举报