TCPIP协议栈网络层常见协议

TCPIP协议栈网络层常见协议,第1张

TCP/IP协议栈网络层常见协议汇总

 大家对网络分层协议栈了解么我们来回顾一下:

 物理层——链路层——网络层——传输层——应用层

 我们之前着重介绍的还是网络层这方面的知识,包括IP协议、IP地址、路由和转发等等,都是网络层的基础知识,这一届我们来介绍一些常用的网络层协议。

 网络层的协议有很多,在这里我们就挑一些常见,常用的协议来介绍:

 PING

 大家对于ping肯定都不陌生,尤其是喜欢玩游戏的同学,ping值过高的话,就会严重影响游戏体验,ping从严格意义上讲不算一种协议,但是在这里也一并将其介绍一下,因为它太有名了。

 我们先来介绍一下ping的流程:windows用户可以用cmd进入用户终端,输入ping+ip地址,便可以进行一次ping,如下图所示:

 如果你输入的IP地址有效且可达,则会收到相应对端发来的回复报文,如下图所示:

 这里的对端是指IP地址所在的服务器,而所谓的ping指,就可以简单理解为从某个数据包发送到服务器开始,到收到服务器应答包为止的时间就是ping。一般以毫秒计算,如果你输入的IP地址有误,或者IP地址不可达,则会受到以下信息:

 ICMP

 大家可能对于ICMP协议有些陌生,事实上上面介绍得ping,其回复报文实际上就是ICMP差错报文,ICMP报文一般分为两种类型,一种是ICMP查询报文,它的作用很明显,就是用来在主机或者路由器之间传递控制信息的协议,所谓的传递信息就是指目的地址是否可达,路由是否可达等等状态信息,ICMP协议并不传输数据,但是它却能够很好地传递状态信息,而刚才介绍的ping程序,结合ICMP协议之后的完整过程就是:

 1、首先查本地arp cache信息,看是否有对方的mac地址和IP地址映射条目记录;

 2、如果没有,则发起一个arp请求广播报文,等待对方告知具体的mac地址;

 3、收到arp响应包之后,获得某个IP对应的具体mac地址,有了物理地址之后才可以开始通信,同事对ip-mac地址做一个本地cache;

 4、发出icmp echo request包,收到icmp echo reply包 。

 前面3条还是一个查arp表获取对端mac的三层IP转发基本流程,而第4条规则就是用ICMP报文来完成回显信息的输出。

 既然提到了ping和icmp,那么就顺便介绍一种常见的IP攻击方式“Ping of Death”(死亡之ping) 。

 Ping of Death可以利用操作系统规定的ICMP数据包最大尺寸不超过64KB这一规定,向主机发起死亡之ping攻击,如果ICMP数据包的尺寸超过64KB上限时,主机就会出现内存分配错误,导致TCP/IP堆栈崩溃,致使主机死机。

 ARP

 在大多数的TCP/IP视线中,ARP是一个基础协议,但是它的运行对于应用程序或系统管理员来说一般都是透明的。ARP告诉缓存在它的运行过程中非常关键。我们可以用arp命令对高速缓存进行检查和操作。高速缓存中的每一项内容都有一个定时器,根据它来删除不完整和完整的表项。arp命令可以显示和修改ARP高速缓存中的内容,我们介绍了ARP的一般操作,同时也介绍了一些特殊的功能,委托ARP和免费ARP。

 简单总结起来就是,在IP转发时,仅仅知道对端IP地址是无法完成转发的,我们需要知道对短的MAC地址才能够进行转发,这个时候加入本地的ARP缓存表中查不到对端的MAC,那么则会发送ARP学习报文,去下游学习MAC,只有学到了MAC才能进一步的转发,而ARP在其中就起到了存储IP地址与MAC地址映射关系的作用,因此ARP协议是网络转发中非常重要的一个协议!

 最后我们来回顾一下,这一节介绍了ping程序,ICMP协议和ARP协议,事实上网络层的协议还有很多很多,但是以上接种协议都是比较常用的协议,大家有兴趣可以深入了解一下。

;

TCP/IP参考模型中,应用层协议常用的有:Telnet、FTP、SMTP 、HTTP。

1、Telnet协议允许一台机器上的用户,登录到远程机器上,并进行工作;

2、FTP协议提供了将文件从一台机器上移到另一台机器上的方法;

3、SMTP协议用于电子邮件的收发;

4、HTTP协议用于在WWW上获取主页。

(注意:DNS协议同时使用了TCP53端口和UDP53端口。DNS协议在UDP53端口上提供域名解析服务,在TCP53端口上提供DNS区域文件传输服务。)

扩展资料:

1、Telnet协议(TELecommunications NETwork,远程登录协议)

Telnet协议是TCP/IP协议家族中的一员,是Internet远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上完成登录远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器。用于实现远程登录功能。

终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器。要开始一个telnet会话,必须输入用户名和密码来登录服务器。

2、FTP协议(File Transfer Protocol,文件传输协议)

基于客户服务器模式,FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端,FTP协议提供了交互式的访问,面向连接,使用TCP/IP更加可靠地进行运输服务。主要功能:减少/消除不同操作系统下文件的不兼容性问题。

在FTP交互的过程中,客户端通过命令字来告诉服务器相关的信息。常用的有访问控制命令USER,PASS、CWD、QUIT 等;传输参数命令PORT、PASV、TYPE、STRU、MODE五种;FTP服务命令RETR、STOR、LIST、ABOR 等二十种。 

3、SMTP 协议(Simple Mail Transfer Protocol,简单邮件传送协议)

基本功能:写信、传送报告、报告传送情况、显示信件、接收方处理信件 。

SMTP是一种提供可靠且有效电子邮件传输的协议。SMTP是建模在FTP文件传输服务上的一种邮件服务,SMTP服务器在默认端口25上监听客户请求,主要用于传输系统之间的邮件信息。是一种面向连接的Client/Server模式。

4、DNS协议 (Domain Name Service ,域名服务协议) 

由数字组成的 IP 地址很难记忆,所以我们上网使用网站 IP 地址的别名——域名。实际使用中,域名与 IP 地址是对应的,这种对应关系保存在DNS 服务器之中。

在浏览器中输入一个域名后,会有 DNS 服务器将域名解析为对应的 IP 地址。注意这和网络层的 ARP 协议的不同之处:DNS 提供的是域名与 IP 地址的对应关系,而 ARP 提供的是 IP 地址和 MAC 地址的对应关系。

5、HTTP协议(Hyper Text Transfer Protocol,超文本传输协议)

它是基于 TCP的可靠传输,采用的是客户端/服务器的工作模式。浏览器向服务器发送请求,而服务器回应相应的网页,用于从万维网(WWW:即World Wide Web)服务器传输超文本到本地浏览器的传送协议。

在 HTTP 通信过程中,首先由客户端向服务器发起建立链接的请求,通过 TCP三次握手来完成,然后客户端向服务器发出请求,告诉服务器想得到的信息。服务器通过响应返回客户端需要的信息。最后通过 TCP 四次握手关闭链接,从而完成一次基本的通信过程。

参考资料:

TCP/IP协议——

在服务器上要开发一个TCP服务端,功能是维护在线客户端列表、处理客户端(假设为客户1)连接请求,将客户1的请求推送到客户2,根据客户2 的响应决定是不是在客户1和2之间建立应用连接,一旦应用连接建立,服务端就持续交换转发客户1、2的数据,直到其中一方断开,这是所有数据都通过服务器中转的方式;还有一种方式服务端仅仅维护在线用户列表,客户端相互直接连接,数据不通过服务器中转,具体实现还有许多细节需要处理,希望能够帮到你。

首先你要明白路由是不是共享式NAT上网的,也就是说router port nat出去的数据是一直堆叠或者持续变动的,而不做端口映射基本没有实现的可能!

当然如果是静态NAT,那么直接做静态NAT就可以了!

如灰鸽子,是直接通过本地服务端(中灰鸽子端)连接广域网客户端(控制端),然后服务端和建立的联系。如通过80端口出数据,穿透防火墙等等。

你可以尝试修改数据包出去的port,同时在两个端进行修改!

-------------

抓取到数据包的时候注意地址段,关键在于让路由到router nat到数据包的时候,能找到你的主机A或者W。

你可以参照一些三层更新之类的软件。

有通过路由器,那就在路由器中设置端口映射,要求是电脑在路由器中获取一个固定的内网IP。由于家用宽带一般禁用了80和21这些常用端口,所以需要的是通过外网访问时,端口就不能是被禁用的端口,另外,家用宽带都是48小时更换一次IP,所以你就需要DDNS,比如花生壳动态域名。

已经设置的动态域名,如:dongtaiddnsnet

设置端口映射,需要通过远程链接访问家里的计算机(1001201),则在路由器中设置端口映射为远程访问端口(如:3390),目标计算机IP(1001201),目标计算机端口(3389,3389是远程桌面的端口)。最后你通过其他计算机远程桌面家里的电脑的时候,就只需要在远程桌面窗口输入:dongtaiddnsnet:3390就可以了

最重要的是你要有一个公网IP。

可能逻辑上有点混乱,对于映射,不同的路由器设置方式都是大致相同的,具体的那就自己查查自己的路由器怎么设置咯。

tcp和udp的区别如下:

1、最大的区别就是TCP是面向连接的,而UDP是无连接的。

2、TCP是可靠的,安全的;UDP是不可靠的,不安全的,但是传输数据的速率快。

3、TCP比UDP更复杂,它具有流量控制和拥塞控制机制。

4、TCP面向字节流;UDP是面向报文的。

5、TCP对系统资源要求较多,UDP对系统资源要求较少。TCP首部有20个字节,UDP的首部只有8个字节的首部开销。

6、TCP连接只能是一对一的;而UDP支持一对一,一对多和多对多的交互通信。

7、UDP协议不使用确认信息对报文的到达进行确认,它不能保证报文到达的顺序,也不能向源端反馈信息来进行流量控制,因而会出现报文丢失等现象。

8、TCP肯定将数据传送出去,并且在目的主机上的应用程序能以正确的顺序接收数据。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » TCPIP协议栈网络层常见协议

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情