IP数据报中的源IP地址和目的IP地址是由谁加上去的?

来源:百度知道 编辑:UC知道 时间:2024/05/14 18:26:14
TCP或者UDP包的首部都只有源端口号和目的端口号字段,但是没有源IP地址和目的IP地址字段,虽然有个叫伪首部的东西,但是它不往上传也不往下传

不禁想问:网络层是如何知道目的IP地址从而填入其首部的?难道还有其他的东西控制它不成?
我想楼下这位兄弟没看明白我的问题....

ip路由选择完成的主要功能
搜索路由表,寻找能与目的IP地址完全匹配的条目。
如果找到,则把报文发送给该表目指定的下一站路由器
或直接连接的网络接口(取决于标志字段的值)。
搜索路由表,寻找能与目的网络匹配的条目,
如果找到,则把报文发送给该表目指定的下一站路由器
或直接连接的网络接口(取决于标志字段的值)。
搜索路由表,寻找标为“默认”的条目,如果找到,
则把报文发送给该表目指定的下一站路由器
如果上面的步骤没有成功,那么该数据报就不能被发送。
如果不能传送的数据报来自本机,
一般会向生成数据报的应用程序返回一个“主机不可达”或“网络不可达”的错误。

为一个网络指定路由器,而不是为一个主机指定路由器,这是ip路由选择机制的一个特性,这样可以大大减少路由表的规模。

ip数据报的格式(首部一般为20个字节,除非含有选项)

xxxxxxxx xxxxxxxx xxxxxxxxxxxxxxxx

4位版本 4位首部长度 8位服务类型 16位总长度

16位标识(唯一标识发送的数据报) 3位标识 13位片偏移

8位生存时间TTL 8位协议 16位首部校验和

32位源IP地址

32位目的IP地址

选项(如果有的话)

数据

互联网的地址分类:

A类 0 + 7位网络号 + 24位主机号 (0.x - 127.x

B类 10 + 14位网络号 + 16位主机号 (128.0.x - 155.255.x)

C类 110 + 21位网络号 + 8位主机号(192.0.0.x - 223.255.255.x)

D类 1110 + 28位多播组号 (224.x - 239.x)

E类 11110 + 27位(留待后用) (240