Linux网络通信管理
TCP/IP网络管理
TCP/IP(Transmission Control Prctocol/Internet Protocol)即传输控制协议/国际协议。
一、TCP/IP体系结构
(1)链路层:称作为数据链路层或网络接口层 包括使用TCP/IP与物理网络进行通信的协议。
(2)网络层:也称作互联网层 主要功能是寻址以及把逻辑地址和名称转换成物理地址。该层还可以
控制子网的操作。判定从源计算机到目标计算机的路由。在TCP/IP协议族中,网络层协议包括IP(网络
协议)、ICMP (互联网控制报文协议)、IGMP (互联网组管理协议)。
(3)传输层:两台主机上的应用程序提供点到点的通信。在TCP/IP协议族中,有两个互不相同的传输
协议TCP (传输控制协议) 和UDP (用户数据报协议)。
(4)应用层:负责处理特定的应用程序的细节,几乎所有的TCP/IP协议都会提供下面这些通用的应用
程序。
1.Telnet(远程登录) 、2.FTP(文件传输协议)、3.SMTP(简单邮件传输协议)、4.SNMP(简单网络管理协议)
二、网络层协议
(1)网络协议(IP) IP的任务是对数据包进行相对应的寻址和路由,使其通过网络进行传输。IP在每个
送的数据包前加入一个控制信息,其中包含了源主机的IP地址、目标主机的IP地址和其他一些信息。IP
的另一个工作是分割和重编在传输层被分割的数据包。由于数据包要从一个网络到另一个网络,因此
当网络所支持传输的数据包的大小不相同时,IP就要在发送端将数据包分割,然后再分割的每一段前
加入控制信息进行传输。当接收端接收到数据包后,IP将所有的片段重新组合形成原始的数据。
IP是一个无连接的协议,无连接是指主机之间在通信传输时,不建立可靠的端到端的连接,源主机
只是简单地将IP数据包发送出去,而数据包可能丢失、重复、延迟或者IP包的次序会混乱。因此要实现
数据包的可靠传输、就必须依靠高层的协议或应用程序。
(2)互联网控制报文协议(ICMP)互联网控制报文协议为IP提供差错报告。由于IP是无连接的,且不进
行差错检验,当网络上发生错误时它不能检测错误,向发送IP数据包的主机汇报错误就是ICMP的责
任。
(3)互联网组管理协议(IGMP)IP只是负责网络中点到点的数据包传输,而点到点的数据包传输则要依
靠互联网组管理协议完成。IGMP主要负责报告主机组之间的关系,以便相关的设备(路由器)支持多播
发送。
(4)地址解析协议(ARP)和反向地址解析协议(RARP)计算机网络中各逐级之间要进行通信时,必要知道
彼此的物理地址(数据链路层地地址,也称MAC地址)因此,在TCP/IP的网络层有ARP和RAPR,它们的
作用是将源主机和目的主机的IP地址与它们的物理地址相匹配。
三、传输层协议
(1)传输控制协议(TCP) TCP是传输层一种面向连接的通信协议,提供可靠的数据传送,对于大量数据
的传输,通常都要求有可靠的传送。
TCP将源主机应用层的数据分成多个分段,然后将每个分段传送到网络层,网络层将数据封装为IP
数据包,并发送到目的主机。目的主机的网络层将IP数据包中的分段传送给传输层,再有传输层对这
些分段进行重组,还原成原始数据传送给应用层。
(2)用户数据报协议(UDP) UDP是一种无连接的协议,因此不能提供可靠的数据传输,而且UDP不进
行差错检验,必须有应用层的应用程序实现可靠性机制和差错控制,以保证端到端数据传输的正确
行。虽然UDP与TCP相对比较不可靠、但是在一定特殊环境下还是非常有优势的。
四、应用层协议
1.远程终端协议(Telnet)本地主机作为仿真终端,登录到远程主机上运行应用程序。
2.文件传输协议(FTP)实现主机之间的文件传送。
3.简单邮件传输协议(SMTP)实现主机之间电子邮件的传送。
4.域名服务(DNS)实现主机名与IP地址之间的映射。
5.动态主机配置协议(DHCP)实现对主机的地址分配和配置工作。
6.路由信息协议(RIP)用于网络设备之间交换路由信息。
7.超文本传输协议(HTTP)用于Internet中的客户机与WWW服务器之间的数据传输。
8.网络文件系统(NFS)实现主机之间的文件系统的共享。
9.引导协议(BOOTP)用于无盘主机或工作站的启动。
10.简单网络管理协议(SNMP)实现网络的管理。
五、网络接口配置文件
设置主机名文件(hostname)
格式:hostname [主机名]
功能:查看或修改计算机的主机名
例如:将主机名设置为instructor.example.com
注意:使用这种方式设置主机名,只是临时有效,系统重启之后立即恢复原主机名要想永久生效,需要设置/etc/sysconfig/network配置文件
(1)vim /etc/sysconfig/network
该文件中保存着完成的主机名Hostname和域名Domain Name
七、ifconfig命令
功能:主要用于配置网络接口的各种参数,包括IP地址、广播地址和网络掩码等。也可以显示、修
改或重新设置网络接口的IP地址等参数。其中up或down表示启动或关闭网络接口设备。
格式:ifconfig [网络接口名] [IP地址] [netmask 子网掩码] [up | down ]
选项:-a 用于显示系统中配置的所有网络接口
例如:手工设置主机系统的以太网接口eth0,使用ifconfig命令
八、主机名解析/etc/hosts文件
注意:当存才多种主机名字的解析方式时,应该采用哪一种方法解析主机,首先会在/etc/hosts.conf文
件设置解析的顺序,其中常用的关键字"order"
功能:直接将主机名到IP地址之间的转换
格式:IP地址 主机名 别名
#vim /etc/hosts配置文件
九、netstat命令
功能说明:netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口
的网络连接情况。
一个是Active Internet connections,称为有源TCP连接,其中"Recv-Q"和"Send-Q"指%0A的是接收队列和
发送队列。这些数字一般都应该是0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少
的情况见到。
另一个是Active UNIX domain sockets,称为有源Unix域套接口(和网络套接字一样,但是只能用于本机
通信,性能可以提高一倍)。
Proto显示连接使用的协议;RefCnt表示连接到本套接口上的进程号;Types显示套接口的类型。
State显示套接口当前的状态;Path表示连接到套接口的其它进程使用的路径名。
语 法:netstat [-acCeFghilMnNoprstuvVwx][-A<网络类型>][--ip]
补充说明:利用netstat指令可让你得知整个Linux系统的网络情况。
参 数:
netstat –s
本选项能够按照各个协议分别显示其统计数据。如果我们的应用程序(如Web浏览器)运行速度
比较慢,或者不能显示Web页之类的数据,那么我们就可以用本选项来查看一下所显示的信息。我们
需要仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在。
netstat –e
本选项用于显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、
删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量
。这个选项可以用来统计一些基本的网络流量)。
netstat –r
本选项可以显示关于路由表的信息,类似于后面所讲使用route print命令时看到的信息。除了显示有效路由外,还显示当前有效的连接。
netstat –a
本选项显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请(LISTENING的那些连接。
netstat –n
显示所有已建立的有效连接。
实际案例练习
1.列出所有端口 (包括监听和未监听的) netstat -a
2.列出所有tcp端口 netstat -at
3.列出所有udp 端口 netstat -au
4.列出所有处于监听状态的Sockets netstat -l
9.显示 TCP 或 UDP 端口的统计信息 netstat -st 或-su
功能:当网络中的所有主机均位于同一网段时,通过IP地址或主机名,系统之间可以随机进行访
问当准备访问的主机位于不同的网段时,则无法直达,必须通过网关或路由器才能访问。
route命令的主要功能是维护网络路由表,利用route命令,可以增加、修改、删除、显示、和监控
格式:route [add | del ] default gw 网关的IP地址
#route add default gw 192.168.0.100
对于新安装或首次接入网络的系统,如果根本无法与网络中的其他任何主机进行通信,其主要问
题也许是网络设置不当。如果主机一直工作正常,突然出现网络故障,那么网络接口故障可能是主要
原因。如果主机能够与同一网络中的任何主机通信,但无法联系外部网络中的主机,问题肯定是路由
器的问题,可能是主机的路由设置不当,或者路由器工作不正常;当然也可能是网络的硬件连接存在
问题。如果网络通信存在以上的问题,我们可以采取利用ifconfig netstat、ping命令检测网络的硬件连接
(1)使用ping命令解决问题的性质,是丢失数据包、还是网络根本就不通。
(2)使用ifconfig命令检查网络接口的状态信息,确定网络接口工作是否正常。
(3)使用netstat命令检查网络接口、路由表和协议统计数据等网络状态信息。
(5)使用ps命令确定相关的服务进程(sshd、vsftpd、telnetd)是否已经启动。
利用ifconfig命令,可以手工配置、修改、或删除网络接口的IP地址,也可以使用ifconfig命令设置其他
如果指定了网络接口的设备名,ifconfig将会给出特定网络接口的各种设置与状态信息。
第一行:是网络接口的链路协议封装类型(如Ethernet)与硬件MAC地址;
第二行:是IP地址(192.168.0.100)广播地址(192.168.0.254)以及子网掩码(255.255.255.0)
第三行:网络接口的状态标识,如启动标志(如UP)广播标志(BROADCAST)以及MTUA设置(如1500)等
第四行:是网络接口的各种统计数据,包括分组数据的收发统计以及字节计数等
如想测试远程主机的连通性,最常见、最简单的方法是采用ping命令,ping命令将会利用ICMP协议
向指定的远程主机发送ECHO_REQUEST请求信息,期望远程主机回应以ECHO_REPLY响应信息。利用
Ping命令,可以检查与指定的远程主机是否建立了TCP/IP连接。
格式:ping [-aAfn] [-c count] [-i interval] [-s size] [-w dead-line] dest-host
其中"-a"选项表示每次响应时均给出声音警示;"-A"选项表示以实际的往返响应时间为间隔;"-n"表示只
需显示主机的IP地址,不必把IP地址解析成主机名。"-c"选项表示发送指定次数的数据报信息之后停止
运行;"-i"选项表示发送每个数据报信息之间的时间间隔,默认值为1秒;"-s"选项表示分组数据的大小
默认值为56个字节;"-w"选项表示以秒为单位的超时值。不管发送或接收了多少信息,一旦达到超时
ping命令的主要用途是测试本地系统与远程主机的网络连通性,远程主机是否正在运行,如果指定
(4)、确定网络通信是否丢失了分组数据
利用ping命令的"-A"选项,不仅可以确定本地系统与远程主机间的连通性,还可以检测两个主机之间
的网络通信是否丢失了分组数据。表示以实际的往返响应时间为间隔,向指定的远程主机连续发送分
ping命令不仅能够检测网络和主机的硬件连接,以及软件运行状态等连通性问题,还可用于检验网络
和主机的响应能力与传输性能。利用ping命令的"-f"选项,可以连续不断地向远程主机发送数据报信
息,而且完全不必顾及是否收到响应信息。ping命令每发送一个ECHO-REQUEST信息,即在屏幕上输
出一个句点"."在本地系统每收到一个ECHO-REPLY响应信息,即在屏幕上输出一个退格符,擦除一个
句点"."按下"ctlr-c"输出的 rttmin/avg/max/mdev"字段能够给出更准确的统计数据,说明往返传输时间的最
转载于:https://blog.51cto.com/10999640/1726241
Linux网络通信管理相关推荐
- 绝对Linux服务器管理利器webmin
用Linux配置服务器绝对是件费时间的事情.虽然外行人看见咱们在黑乎乎屏幕上打着一行行命令代码似乎是很NB,可真实的辛苦也就只有自己知道了.现在好了,有了webmin这款软件,绝对让我们管理服务器时能 ...
- Windows内存管理和linux内存管理
windows内存管理 windows 内存管理方式主要分为:页式管理,段式管理,段页式管理. 页式管理的基本原理是将各进程的虚拟空间划分为若干个长度相等的页:页式管理把内存空间按照页的大小划分成片或 ...
- Linux包管理器apt/apt-get发现远程代码执行漏洞
研究人员Max Justicz日前发现了知名Linux包管理器apt/apt-get中的远程代码执行漏洞,该漏洞允许外部进行中间人攻击并获取root权限以执行任何代码.该漏洞已在最新版本apt修复,如 ...
- linux内核时钟管理,Linux时钟管理透彻分析
Linux时钟管理透彻分析.硬件资源越来越庞大和复杂,内核的另一个挑战就是要便捷的管理这些资源.同时,面对如此之多的平台不同的CPU,管理机制需要统一适用,这就需要对资源的管理抽象到更加通用的层次.C ...
- Linux进程管理 (7)实时调度
关键词:RT.preempt_count.RT patch. 除了CFS调度器之外,还包括重要的实时调度器,有两种RR和FIFO调度策略.本章只是一个简单的介绍. 更详细的介绍参考<Linux进 ...
- 万字长文,别再说你不懂Linux内存管理了(合辑),30 张图给你安排的明明白白...
之前写了两篇详细分析 Linux 内存管理的文章,读者好评如潮.但由于是分开两篇来写,而这两篇内容其实是有很强关联的,有读者反馈没有看到另一篇读起来不够不连贯,为方便阅读这次特意把两篇整合在一起,看这 ...
- 别再说你不懂Linux内存管理了,10张图给你安排的明明白白!
来自:后端技术学堂 过去的一周有点魔幻,有印象的有三个新闻:天猫总裁绯闻事件,蘑菇街裁员,不可能打工的周某也放出来了.三件事,两件和互联网行业相关,好像外面的世界很是精彩啊!吃瓜归吃瓜,学习还是不能落 ...
- linux磁盘管理命令 lv,Linux磁盘管理--LVM原理及基本操作
LVM(Logical Volume Manager)逻辑卷管理是Linux磁盘管理中的常用操作, 本文主要描述LVM的基本原理以及对LVM的扩展和缩减的基本操作. LVM实质是过软件方式将多个物理分 ...
- linux磁盘管理系列一:磁盘配额管理
磁盘管理系列 linux磁盘管理系列一:磁盘配额管理 http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...
最新文章
- keras图像增强augmentation
- [转]WebPack 常用功能介绍
- python语言百度百科-Python 语言下数据驱动DDT的应用
- WebBrowser介绍——Javascript与C++互操作
- freemarker小例子
- ES6——Set和WeakSet
- PMP项目管理认证体系
- DevExpress chartControl 数据绑定
- js排序的时间复杂度_各种排序算法时间复杂度
- 油猴插件/脚本还不会使用?看这篇文章就够了, 各种实用的插件/脚本使用技巧
- 应对微软20号黑屏的几种解决办法
- C# 破解 Reflector8.5
- 孪生素数对php编写,孪生素数
- 使用c#捕获usb扫描枪扫描二维码、条形码结果(支持中文版)
- html5 车牌识别,深度学习实现车牌识别
- 张赐荣 | 浅谈 UIAutomation 自动化技术在读屏软件中的应用
- BEA-090403 Authentication for user admin denied
- pythonqq刷消息_QQ快速刷幸运字符
- 普元EOS中, 子系统和portal不在同一个域中,使用jquery的jsonp来解决portal跨域访问
- win10上打不开epub小说怎么办?快试试以下几种办法
热门文章
- 公司--查看SQL 用web.xml文件
- RabbitMQ (五)实现类似Dubbo的RPC调用
- android xml ui编辑器,Android Studio(八):使用Layout Editor设计UI
- linux定时任务案例,Linux定时任务案例
- js两个等号和三个等号_js中两个等号(==)和三个等号(===)的区别
- android设置app全局没通知声,从android中的firebase发送通知时没有通知声音
- mysql 行锁 超时_技术分享 | MySQL 行锁超时排查方法优化
- 第十六届智能车竞赛创意组比赛-筹划初稿
- 差分霍尔器件测量电路
- 42HS48步进电机实验