9 个解决方案
#1
咱俩的理解差不多,补充一点:本机的发包的时候也要进行路由,如果是同一个网段就用目标机器的mac地址封装成桢在网上发送,如果是外部地址就会用路由器(网关)的mac地址封装寺。
#2
谢谢海阔天空的支持
#3
是的....具体的操作 由软件内部完成.选择好路由后...将加上MAC地址封装成桢发送给下一跳就可以了
#4
补充,在数据链路层的通信是点到点的,在网络层的通信是端到端的。
在网络层数据单位称为ba包,在数据链路层称为桢
Internet网上的路由是这样的:
请求主机(IP)封装成桢->在数据链路层,路由器根据路由表封装上自己的mac地址->下一个路由器如果不是,封装自己的Mac地址->..........->目地主机IP
在网络层数据单位称为ba包,在数据链路层称为桢
Internet网上的路由是这样的:
请求主机(IP)封装成桢->在数据链路层,路由器根据路由表封装上自己的mac地址->下一个路由器如果不是,封装自己的Mac地址->..........->目地主机IP
#5
我不完全同意各位观点: 在数据链路层与各位的说法差不多,当LAN想外网发送数据时,发现在目的不在LAN内,他会查找自己是否指定了router,有他会发送ARP请求查找该ROUTER的MAC并封装ETHERNET包,ROUTER收到包后会查找路由,若是要转发的就封装ETHERNET包扔到另一网卡,同时IP包也要修改,将源IP地址改为ROUTER外网地址,同时ROUTER也会建立NAT表之类的东西,以便数据回时知道是LAN内那台主机
#6
楼上说的是用NAT代理的情况,要传统意义上的路由器是有区别的。传统意义上的路由器只是负责选择路由进行包转发,不会修改IP包源地址。nat代理服务器才会修改ip包源地址,并为源主机建立端口映射(采用端口映射的nat服务器)
#7
基本对!
#8
基本没问题,路由器收到IP包后,查找路由表,按照主机、网段的顺序查找,如果没有查到,将按照默认路由的方式转发。
#9
不同的协议自当区别对待,比如,novell网它的特有的novell rip就通过mac寻址和访问。
同意cwanter(海阔天空)的nat转换,因为那osi协议就是通过各层的封装,解封,来达到目的 的,而tcp/ip是其简化协议,只进行ip封装就可了。
同意cwanter(海阔天空)的nat转换,因为那osi协议就是通过各层的封装,解封,来达到目的 的,而tcp/ip是其简化协议,只进行ip封装就可了。
#1
咱俩的理解差不多,补充一点:本机的发包的时候也要进行路由,如果是同一个网段就用目标机器的mac地址封装成桢在网上发送,如果是外部地址就会用路由器(网关)的mac地址封装寺。
#2
谢谢海阔天空的支持
#3
是的....具体的操作 由软件内部完成.选择好路由后...将加上MAC地址封装成桢发送给下一跳就可以了
#4
补充,在数据链路层的通信是点到点的,在网络层的通信是端到端的。
在网络层数据单位称为ba包,在数据链路层称为桢
Internet网上的路由是这样的:
请求主机(IP)封装成桢->在数据链路层,路由器根据路由表封装上自己的mac地址->下一个路由器如果不是,封装自己的Mac地址->..........->目地主机IP
在网络层数据单位称为ba包,在数据链路层称为桢
Internet网上的路由是这样的:
请求主机(IP)封装成桢->在数据链路层,路由器根据路由表封装上自己的mac地址->下一个路由器如果不是,封装自己的Mac地址->..........->目地主机IP
#5
我不完全同意各位观点: 在数据链路层与各位的说法差不多,当LAN想外网发送数据时,发现在目的不在LAN内,他会查找自己是否指定了router,有他会发送ARP请求查找该ROUTER的MAC并封装ETHERNET包,ROUTER收到包后会查找路由,若是要转发的就封装ETHERNET包扔到另一网卡,同时IP包也要修改,将源IP地址改为ROUTER外网地址,同时ROUTER也会建立NAT表之类的东西,以便数据回时知道是LAN内那台主机
#6
楼上说的是用NAT代理的情况,要传统意义上的路由器是有区别的。传统意义上的路由器只是负责选择路由进行包转发,不会修改IP包源地址。nat代理服务器才会修改ip包源地址,并为源主机建立端口映射(采用端口映射的nat服务器)
#7
基本对!
#8
基本没问题,路由器收到IP包后,查找路由表,按照主机、网段的顺序查找,如果没有查到,将按照默认路由的方式转发。
#9
不同的协议自当区别对待,比如,novell网它的特有的novell rip就通过mac寻址和访问。
同意cwanter(海阔天空)的nat转换,因为那osi协议就是通过各层的封装,解封,来达到目的 的,而tcp/ip是其简化协议,只进行ip封装就可了。
同意cwanter(海阔天空)的nat转换,因为那osi协议就是通过各层的封装,解封,来达到目的 的,而tcp/ip是其简化协议,只进行ip封装就可了。