linux使用什么命令检测基本网络连接(linux检查网络连接)

linux命令界面中查看网络连接使用什么命令

linux查看网络链接状况命令

netstat 参数如下:

-a 显示所有socket,包括正在监听的。

-c 每隔1秒就重新显示一遍,直到用户中断它。

-i 显示所有网络接口的信息,格式同“ifconfig -e”。

-n 以网络IP地址代替名称,显示出网络连接情形。

-r 显示核心路由表,格式同“route -e”。

-t 显示TCP协议的连接情况。

-u 显示UDP协议的连接情况。

-v 显示正在进行的工作。

1. netstat -an | grep LISTEN

0.0.0.0的就是每个IP都有的服务,写明哪个IP的就是绑定那个IP的服务。

2. netstat -tln

用来查看linux的端口使用情况

3. /etc/init.d/vsftp start

是用来启动ftp端口~!

4. netstat

查看已经连接的服务端口(ESTABLISHED)

5. netstat -a

查看所有的服务端口(LISTEN,ESTABLISHED)

6. sudo netstat -ap

查看所有的服务端口并显示对应的服务程序名

7. nmap <扫描类型><扫描参数>

例如:

nmap localhost

nmap -p 1024-65535 localhost

nmap -PT 192.168.1.127-245

当我们使用 netstat -apn 查看网络连接的时候,会发现很多类似下面的内容:

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 52 218.104.81.152:7710 211.100.39.250:29488 ESTABLISHED 6111/1

显示这台服务器开放了7710端口,那么这个端口属于哪个程序呢? 我们可以使用 lsof -i :7710 命令来查询:

COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME

sshd 1990 root 3u IPv4 4836 TCP *:7710 (LISTEN) 54com.cn

这样,我们就知道了7710端口是属于sshd程序的。

=================================================

下面这个语句是一个非常好的查看TCP连接状态的语句:

netstat -n | awk \'/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’

返回结果示例:

LAST_ACK 5

SYN_RECV 30

ESTABLISHED 1597

FIN_WAIT1 51

FIN_WAIT2 504

TIME_WAIT 1057

以下是各种状态的描述

CLOSED:无连接是活动的或正在进行

ESTABLISED:已建立连线的状态;

SYN_SENT:发出主动连线 (SYN 标志) 的连线封包;

SYN_RECV:接收到一个要求连线的主动连线封包;

FIN_WAIT1:该插槽服务(socket)已中 断,该连线正在断线当中;

FIN_WAIT2:该连线已挂断,但正在等待对方主机回应断线确认的封包;

TIME_WAIT:该连线已 挂断,但 socket 还在网路上等待结束;

LISTEN:通常用在服务的监听 port !可使用『 -l 』参数查阅。

CLOSING: 两边同时尝试关闭

TIME_WAIT:另一边已初始化一个释放

LAST_ACK:等待所有分组死掉

测试网络连通性的命令是什么?

测试网络连通性命令是PING。

分析:linux下测试网络连通性命令是PING,其主要功能就是为了检测主机;Ping是工作在 TCP/IP网络体系结构中应用层的一个服务命令, 主要是向特定的目的主机发送 ICMP(Internet Control Message Protocol 因特网报文控制协议)Echo 请求报文,测试目的站是否可达及了解其有关状态。

扩展Ping。

在路由器的特权模式下,可以使用其他几个选项,这就是所谓的扩展ping,它是交互形式工作的。

扩展ping的可用其他选项包括:使用不同大小的数据包;增加应答等待时间间隔;一次发送多于5个数据包;在IP报头设置“不分段”位;在其他协议中使用ping,例如IPX和AppleTalk。方法是:在enable模式下输入ping并按回车键即可启动扩展ping,ping工具将提示输入各种变量值。

linux测试网络是否连通的命令

测试网络是否连通

1,ping IP 查看网络数据包是否可达 (首先PING 网关 如果网关都不通的话说明网络或配置有问题。如果网关通,但是没有外网 或PING不通其他网段的网络)那么可以实用下一条!

2,. traceroute Ip(域名)查看你是再哪一跳失败的。 从而检测出 是哪个设备的故障。比如网关 防火墙 路由器 交换机等。

测试端口是否连通

方法一、telnet法

telnet为用户提供了在本地计算机上完成远程主机工作的能力,因此可以通过telnet来测试端口的连通性,具体用法格式:

telnet ip port

说明:

ip:是测试主机的ip地址

port:是端口,比如80

如果telnet连接不存在的端口,那会如下图所示。

如果telnet 连接存在端口会出现如下图所示的内容,下图中以80端口为例。

方法二、ssh法

SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,在linux上可以通过ssh命令来测试端口的连通性,具体用法格式如下:

用法: ssh -v -p port username@ip

说明:

-v 调试模式(会打印日志).

-p 指定端口

username:远程主机的登录用户

ip:远程主机

如果远程主机开通了相应的端口,会有如下图所示的建立成功的提示。

如果远程主机没有开通相应的端口,则如下图所示

方法三、curl法

curl是利用URL语法在命令行方式下工作的开源文件传输工具。也可以用来测试端口的连通性,具体用法:

curl ip:port

说明:

ip:是测试主机的ip地址

port:是端口,比如80

如果远程主机开通了相应的端口,都会输出信息,如果没有开通相应的端口,则没有任何提示,需要CTRL+C断开。

方法四、wget方法

wget是一个从网络上自动下载文件的自由工具,支持通过HTTP、HTTPS、FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理。wget名称的由来是“World Wide Web”与“get”的结合,它也可以用来测试端口的连通性具体用法:   《Linux就该这么学》 学习更多linux命令。

wget ip:port

说明:

ip:是测试主机的ip地址

port:是端口,比如80

如果远程主机不存在端口则会一直提示连接主机。

Linux常用网络配置命令

一、查看网络配置

确保网络配置的正确性及网络连接的畅通是Linux系统作为服务器应用的基础,查看及测试网络配置是管理Linux网络服务的第一步。

1.ifconfig——查看网络配置

1) 查看所有活动网络接口的信息

执行 ifconfig 或ip addr或ip a命令,都可以显示当前主机中已启用(活动)的网络接口信息。、

2) 查看指定网络接口信息

格式:ifconfig 网络接口名

可以通过TX、RX等信息了解到通过该网络接口发送和接收的数据包个数,流量等跟多属性。

2.hostname命令

在Linux系统中,相当一部分网络服务都会通过主机名来识别本机,如果主机名配置不当,可能会导致程序功能出现故障。

1) 查看主机名

使用hostname命令就可以查看当前主机的主机名,不添加任何选项参数。

2) 临时更改主机名

hostname NewName

注:这种方法只是临时的更改主机名,重启后将失效。

3) 永久更改主机名

a. 修改配置文件

RHEL6和7的配置文件存放路径不相同,修改配置文件中的主机名,重启就可永久更改主机名。

RHEL6主机名配置文件路径为:/etc/sysconfig/network

RHEL7主机名配置文件路径为:/etc/hostname

示例

b. 使用命令修改(这种方法只适用于RHEL7或者CentOS7之后)

命令格式:

使用该命令更改后,更改后的主机名就自动写入了配置文件中,所以可以永久更改主机名,其实就是修改了配置文件。

3.route命令

直接执行route命令可以查看当前主机中的路由表信息,若结合“-n”选项使用,可以将路由记录中的地址显示为数字形式,这可以跳过解析主机名的过程,在路由表条目较多的情况下能够加快执行速度。

Destination列对应的是目标网段的地址,Gateway列对应的是吓一跳路由器的地址,Iface列对应的是发送数据的网络接口。当目标网段为“default”是,表示此行是默认网关记录,当吓一跳为“*”是,表示目标网段是与本机直接相连的。

4.netstat命令——查看系统的网络连接状态等

netstat命令是了解网络状态及排除网络服务故障的有效工具。

常用选项:

-a:显示所有活动连接(包括监听、非监听状态的服务端口)

-n:以数字形式显示

-p:显示相关的进程信息

-t:查看 TCP 协议相关信息

-u:查看UDP协议相关信息

-r:显示路由表信息

-l:显示处于监听(listening)状态的网络连接及端口信息

通常使用“-anput”组合选项,结合管道使用“grep”命令,来查看一些服务的端口是否开启。

示例:

Tcp21为ftp服务的端口

二、测试网络连接

1.ping命令——测试网络连通性

常用选项:

-c完成次数:设置完成要求回应的次数

-i间隔秒数:指定收发信息的间隔时间

-q:不显示指令执行过程,开头和结尾的相关信息除外

-s数据包大小:设置数据包的大小

-t存活数值:设置存活数值TTL的大小

-v:详细显示指令的执行过程

若返回“Destination Host Unreachable”的反馈信息,则表示目标主机不可达,可能目标地址不存在或主机已关闭;返回“Network is unreachable”的反馈信息,则表示没有可用的路由记录(如默认网关),无法到达目标主机所在的网络;返回“Request timeout”的反馈信息,表示与目标主机间的连接超时(数据包缓慢或丢失),若有严格的防火墙限制,也可能返回此信息。

2.traceroute命令——跟踪数据包的路由途径

使用traceroute命令可以测试从当前主机到目的主机之间经过的网络节点,并显示各中间结点的连接状态(响应时间)。对于无法响应的节点,连接状态将显示为“*”。

示例:traceroute IP_ADDR

在网络测试与排错的过程中,通常会先使用ping命令测试与主机的网络连接,如果发现网络有故障,再使用traceroute命令跟踪查看是在哪个中间结点存在故障。

3.nslookup命令——测试DNS域名解析

nslookup是用来测试(DNS)域名解析的专用工具。(DNS服务后面再详细讲解,通俗的说就是将域名解析为ip地址的一个服务)

示例:nslookup

若成功反馈要查询域名的IP地址,则表示域名解析没有问题;若出现“...... no servers could be reached”的信息,表示不能连接到指定的DNS服务器;若出现“...... cant’t find xxx.yyy.zzz:NXDOMAIN”的信息,表示要查询的域名不存在。

三、设置网络地址参数

设置网络参数的方法:

• 临时配置 —— 使用命令调整网络参数简单、快速,可直接修改运行中的网络参数

一般只适合在调试网络的过程中使用

系统重启以后,所做的修改将会失效

• 永久配置 —— 通过配置文件修改网络参数修改各项网络参数的配置文件

适合对服务器设置固定参数时使用

需要重载网络服务或者重启以后才会生效

1.临时配置——使用网络配置命令(注:RHEL6中网络接口的名称为eth,RHEL7中为ens)

1)使用ifconfig命令修改网卡的地址、状态

ifconfig命令不仅可以用于查看网卡配置,还可以修改网卡的ip地址,子网掩码,也可以绑定网络接口、激活或停用网络接口

a. 修改网卡的ip地址(临时修改)

命令格式:

示例:

b. 禁用或者重新激活网卡

命令格式:

示例:

c. 设置虚拟网络接口(相当于一块网卡配置多个IP地址)

命令格式:

示例:

可以根据需要添加更多的虚拟接口,如“eth0:1”“eth0:2”等

2)使用route命令添加、删除静态路由记录

• 删除路由表中的默认网关记录命令格式:route del default gw IP地址

• 向路由表中添加默认网关记录命令格式:route add default gw IP地址

• 添加到指定网段的路由记录命令格式:route add -net 网段地址 gw IP地址

• 删除到指定网段的路由记录命令格式:router del -net 网段地址

2.永久配置——修改网络配置文件

1)网络接口配置文件

网络接口的配置文件默认位于目录“/etc/sysconfig/network-scripts/”中,文件名格式为:“ifcfg-XXX”,其中“XXX”是网络接口的名称。例如:RHEL6中网卡eth0的配置文件是“ifcfg-eth0”,而RHEL7中网卡ens33的配置文件是“ifcfg-ens33”。

在网卡的配置文件中,可以看到静态IP地址的部分内容如下图所示:

上述个配置项的含义及作用:(图示为RHEL6中的配置文件,7中也差不多,换汤不换药,修改的都差不多)

• DEVICE:设置网络接口的名称ONBOOT:设置网络接口是否在Linux系统启动时激活BOOTPROTO:设置网络接口的配置方式,值为static时表示使用静态ip地址,为dhcp时表示通过dhcp的方式动态获取ip地址IPADDR:设置网络接口的ip地址NETMASK:设置网络接口的子网掩码GATEWAY:设置网络接口的默认网关地址2)重启 network 网络服务

当修改了网络接口的配置文件以后,若要使新的配置生效,可以重启network服务或者重启主机或者禁用、启用网络接口。

示例:

• RHEL6中重启network服务:service network restartRHEL7中重启network服务:systemctl restart network注:这是我在做实验时候的一个经验:RHEL6修改完网卡配置重启后,ip地址仍然没有改过来,这时候我们经常会删除“/etc/udev/rules.d/70-persistent-net.rules”这个文件。RHEL7不用管,RHEL7特别好改,RHEL6改的时候特别难受。(个人提示,不求认同)

3)域名解析配置文件

a.指定为本机提供DNS解析的服务器地址

/etc/resolv.conf文件中记录了本机默认使用的DNS服务器的地址信息,对该文件所做的修改将会立刻生效。Linux系统中最多可以指定3个(第3个以后将被忽略)不同的DNS服务器地址,优先使用第1个DNS服务器。

示例:

其中“search localdomain”用来设置默认的搜索域(域名后缀)。例如,当访问主机“localhost”时,就相当于访问“localhost.localdomain”。

b.本地主机映射文件

/etc/hosts文件中记录着一份主机名与ip地址的映射关系表,一般用来保存经常访问的主机信息。当访问一个未知的域名时,先查找该文件中是否有相应的映射记录,如果找不到在去向DNS服务器查询。

hosts 文件和 DNS 服务器的比较

• 默认情况下,系统首先从 hosts 文件查找解析记录hosts 文件只对当前的主机有效hosts 文件可减少 DNS 查询过程,从而加快访问速度

Linux netstat命令详解

Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。

执行netstat后,其输出结果为

从整体上看,netstat的输出结果可以分为两个部分:

一个是Active Internet connections,称为有源TCP连接,其中\"Recv-Q\"和\"Send-Q\"指%0A的是接收队列和发送队列。这些数字一般都应该是0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到。

另一个是Active UNIX domain sockets,称为有源Unix域套接口(和网络套接字一样,但是只能用于本机通信,性能可以提高一倍)。

Proto显示连接使用的协议,RefCnt表示连接到本套接口上的进程号,Types显示套接口的类型,State显示套接口当前的状态,Path表示连接到套接口的其它进程使用的路径名。

-a (all)显示所有选项,默认不显示LISTEN相关

-t (tcp)仅显示tcp相关选项

-u (udp)仅显示udp相关选项

-n 拒绝显示别名,能显示数字的全部转化成数字。

-l 仅列出有在 Listen (监听) 的服务状态

-p 显示建立相关链接的程序名

-r 显示路由信息,路由表

-e 显示扩展信息,例如uid等

-s 按各个协议进行统计

-c 每隔一个固定时间,执行该netstat命令。

提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

列出所有端口 netstat -a

列出所有 tcp 端口 netstat -at

列出所有 udp 端口 netstat -au

只显示监听端口 netstat -l

只列出所有监听 tcp 端口 netstat -lt

只列出所有监听 udp 端口 netstat -lu

只列出所有监听 UNIX 端口 netstat -lx

显示所有端口的统计信息 netstat -s

显示 TCP 或 UDP 端口的统计信息 netstat -st 或 -su

netstat -p 可以与其它开关一起使用,就可以添加 “PID/进程名称” 到 netstat 输出中,这样 debugging 的时候可以很方便的发现特定端口运行的程序。

当你不想让主机,端口和用户名显示,使用 netstat -n。将会使用数字代替那些名称。

同样可以加速输出,因为不用进行比对查询。

如果只是不想让这三个名称中的一个被显示,使用以下命令

netstat 将每隔一秒输出网络信息。

在输出的末尾,会有如下的信息

注意: 使用 netstat -rn 显示数字格式,不查询主机名称。

并不是所有的进程都能找到,没有权限的会不显示,使用 root 权限查看所有的信息。

找出运行在指定端口的进程

显示详细信息,像是 ifconfig 使用 netstat -ie:

查看连接某服务端口最多的的IP地址

TCP各种状态列表

linux如何查看网络连接情况?

linux通过终端输入命令来查看网络连接情况:

ifconfig,总体的网络配置参数

ping发送ECHO_REQUEST包到你指定的地址。这样你可以很方便确认你的电脑和Internet或是一个指定的IP地址是不是通的

tracepath追踪出到指定的目的地址的网络路径,并给出在路径上的每一跳(hop)。如果你的网络有问题或是慢了,tracepath可以查出网络在哪里断了或是慢了

whois命令输出指定站点的whois记录,可以查看到更多如谁注册和持有这个站点这样的信息

dhclient命令可以释放你的电脑的IP地址并从DHCP服务器上获得一个新的IP地址。

未经允许不得转载:便宜VPS网 » linux使用什么命令检测基本网络连接(linux检查网络连接)