您的当前位置:首页正文

linux网络命令

2023-04-15 来源:年旅网


网络命令

5.1显示网络地址

命令:arp

格式:arp hostname

功能:显示系统当前访问的远程住机名、IP地址和硬件地址。

选项:-a

注释:

例如:% arp -a

5.2 显示用户信息

命令:finger

格式:finger username

功能:显示网上用户使用机器的情况,包括用户何时登录和最后一次注册记录。

选项:

注释:

例如:% finger username

5.3 网上对话

命令:talk

格式:talk username

功能:在网上与另一用户进行对话。

选项:

注释:对话时系统把终端分为上下两部分,上半部显示自己键入信息,下半部

显示对方用户键入的信息。键入delete或Ctrl+C则结束对话。

例如:% talk username

5.4 允许或拒绝接受信息

命令:mesg (message)

格式:mesg [n/y]

功能:允许或拒绝其它用户向自己所用的终端发送信息。

选项:n 拒绝其它用户向自己所用的终端写信息

y 允许其它用户向自己所用的终端写信息(缺省值)

注释:

例如:% mesg n

5.5 给其他用户写信息

命令:write

格式:write username [ttyname]

功能:给其他用户的终端写信息。

选项:

注释:若对方没有拒绝,两用户可进行交谈,键入EOF或Ctrl+C则结束对话。

例如:write username

5.6 测试网路

命令:ping

格式:ping hostname

功能:向网络上的主机发送ICMP ECHO REQUEST信息包,检测网络是否畅通。

选项:

注释:被测试的主机名可用IP地址。当丢包率为(100% packet loss)则说明

当前网络不通。

例如:% ping hostsname

5.7 远程shell命令

命令:rsh (remote shell)

格式:rsh hostsname command

功能:在本地机执行远程主机的shell命令。

选项:

注释:

例如:% rsh hostname who

5.8 远程考贝文件

命令:rcp (remote copy)

格式:rcp [-r] file newfile

功能:拷贝远程主机上的文件。

选项:-r 拷贝目录

注释:

例如:% rcp hostname:/tmp/file .

5.9 远程注册

命令:rlogin (remote login)

格式:rlogin hostname [-l username]

功能:注册到远程主机上。

选项:-l username 注册到另一用户

注释:要有用户口令才能注册。

例如:% rlogin hostname

5.10 远程登录

命令:telnet

格式:telnet hostname

功能:远程登录到网上其它主机。

选项:

注释:支持不同的操作系统。

例如:% telnet bbs.tsinghua.edu.cn

5.11文件传输

命令:ftp (file transfer program)

格式:ftp hostname

功能:网络文件传输及远程操作。

选项:ftp命令:

?/help ftp的联机帮助

open hostname 打开制定的远程机

cd [dirname] 进入远程机的目录

lcd [dirname] 设置本地机的目录

dir/ls 显示远程的目录文件

binary 以二进制方式进行传输

get/mget 从远程机取一个或多个文件

put/mput 向远程机送一个或多个文件

prompt 打开或关闭多个文件传送时的交互提示

close 关闭与远程机的连接

quit 退出ftp

注释:

例如:% ftp hostname

5.12显示到网络主机的路经

命令:traceroute

格式:traceroute hostname

功能:显示本机到达某一网络主机所经的路经和使用的时间。

选项:

注释:

例如:% traceroute hostname

1、 telnet

2、 功能说明:远端登入。

3、 语 法:telnet [-8acdEfFKLrx][-b<主机别名>][-e<脱离字符>][-k<域名>][-l<用户名称>][-n<记录文件>][-S<服务类型>][-X<认证形态>][主机名称或IP地址<通信端口>]

4、 补充说明:执行telnet指令开启终端机阶段作业,并登入远端主机。

5、 参 数:

6、 -8 允许使用8位字符资料,包括输入与输出。

7、 -a 尝试自动登入远端系统。

8、 -b<主机别名> 使用别名指定远端主机名称。

9、 -c 不读取用户专属目录里的.telnetrc文件。

10、 -d 启动排错模式。

11、 -e<脱离字符> 设置脱离字符。

12、 -E 滤除脱离字符。

13、 -f 此参数的效果和指定\"-F\"参数相同。

14、 -F 使用Kerberos V5认证时,加上此参数可把本地主机的认证数据上传到远端主机。

15、 -k<域名> 使用Kerberos认证时,加上此参数让远端主机采用指定的领域名,而非该主机的域名。

16、 -K 不自动登入远端主机。

17、 -l<用户名称> 指定要登入远端主机的用户名称。

18、 -L 允许输出8位字符资料。

19、 -n<记录文件> 指定文件记录相关信息。

20、 -r 使用类似rlogin指令的用户界面。

21、 -S<服务类型> 设置telnet连线所需的IP TOS信息。

22、 -x 假设主机有支持数据加密的功能,就使用它。

23、 -X<认证形态> 关闭指定的认证形态。

24、 2、ifconfig

25、 功能说明:显示或设置网络设备。

26、 语 法:ifconfig [网络设备][down up -allmulti -arp -promisc][add<地址>][del<地址>][<硬件地址>][io_addr][irq][media<网络媒介类型>][mem_start<内存地址>][metric<数目>][mtu<字节>][netmask<子网掩码>][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>][IP地址]

27、 补充说明:ifconfig可设置网络设备的状态,或是显示目前的设置。

28、 参 数:

29、 add<地址> 设置网络设备IPv6的IP地址。

30、 del<地址> 删除网络设备IPv6的IP地址。

31、 down 关闭指定的网络设备。

32、 <硬件地址> 设置网络设备的类型与硬件地址。

33、 io_addr 设置网络设备的I/O地址。

34、 irq 设置网络设备的IRQ。

35、 media<网络媒介类型> 设置网络设备的媒介类型。

36、 mem_start<内存地址> 设置网络设备在主内存所占用的起始地址。

37、 metric<数目> 指定在计算数据包的转送次数时,所要加上的数目。

38、 mtu<字节> 设置网络设备的MTU。

39、 netmask<子网掩码> 设置网络设备的子网掩码。

40、 tunnel<地址> 建立IPv4与IPv6之间的隧道通信地址。

41、 up 启动指定的网络设备。

42、 -broadcast<地址> 将要送往指定地址的数据包当成广播数据包来处理。

43、 -pointopoint<地址> 与指定地址的网络设备建立直接连线,此模式具有保密功能。

44、 -promisc 关闭或启动指定网络设备的promiscuous模式。

45、 [IP地址] 指定网络设备的IP地址。

46、 [网络设备] 指定网络设备的名称。

47、 -------------------------------------------------------

48、 3、ping

49、 功能说明:检测主机。

50、 语 法:ping [-dfnqrRv][-c<完成次数>][-i<间隔秒数>][-I<网络界面>][-l<前置载入>][-p<范本样式>][-s<数据包大小>][-t<存活数值>][主机名称或IP地址]

51、 补充说明:执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。

52、 参 数:

53、 -d 使用Socket的SO_DEBUG功能。

54、 -c<完成次数> 设置完成要求回应的次数。

55、 -f 极限检测。

56、 -i<间隔秒数> 指定收发信息的间隔时间。

57、 -I<网络界面> 使用指定的网络界面送出数据包。

58、 -l<前置载入> 设置在送出要求信息之前,先行发出的数据包。

59、 -n 只输出数值。

60、 -p<范本样式> 设置填满数据包的范本样式。

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

62、 -r 忽略普通的Routing Table,直接将数据包送到远端主机上。

63、 -R 记录路由过程。

64、 -s<数据包大小> 设置数据包的大小。

65、 -t<存活数值> 设置存活数值TTL的大小。

66、 -v 详细显示指令的执行过程。

67、 -----------------------------------------------------

68、 4、netstat

69、 功能说明:显示网络状态。

70、 语 法:netstat [-acCeFghilMnNoprstuvVwx][-A<网络类型>][--ip]

71、 补充说明:利用netstat指令可让你得知整个Linux系统的网络情况。

72、 参 数:

73、 -a或--all 显示所有连线中的Socket。

74、 -A<网络类型>或--<网络类型> 列出该网络类型连线中的相关地址。

75、 -c或--continuous 持续列出网络状态。

76、 -C或--cache 显示路由器配置的快取信息。

77、 -e或--extend 显示网络其他相关信息。

78、 -F或--fib 显示FIB。

79、 -g或--groups 显示多重广播功能群组组员名单。

80、 -h或--help 在线帮助。

81、 -i或--interfaces 显示网络界面信息表单。

82、 -l或--listening 显示监控中的服务器的Socket。

83、 -M或--masquerade 显示伪装的网络连线。

84、 -n或--numeric 直接使用IP地址,而不通过域名服务器。

85、 -N或--netlink或--symbolic 显示网络硬件外围设备的符号连接名称。

86、 -o或--timers 显示计时器。

87、 -p或--programs 显示正在使用Socket的程序识别码和程序名称。

88、 -r或--route 显示Routing Table。

89、 -s或--statistice 显示网络工作信息统计表。

90、 -t或--tcp 显示TCP传输协议的连线状况。

91、 -u或--udp 显示UDP传输协议的连线状况。

92、 -v或--verbose 显示指令执行过程。

93、 -V或--version 显示版本信息。

94、 -w或--raw 显示RAW传输协议的连线状况。

95、 -x或--unix 此参数的效果和指定\"-A unix\"参数相同。

96、 --ip或--inet 此参数的效果和指定\"-A inet\"参数相同。

97、 -----------------------------------------------------

98、 5、nslookup命令

99、 nslookup命令的功能是查询一台机器的IP地址和其对应的域名。它通常需要一台域名服务器来提供域名服务。如果用户已经设置好域名服务器,就可以用这个命令查看不同主机的IP地址对应的域名。

100、 该命令的一般格式为:

101、 nslookup [IP地址/域名]

102、 [例]在本地机上使用nslookup命令。

103、 $ nslookup

104、 Default Server: name.tlc.com.cn

105、 Address: 192.168.1.99

106、 >

107、 在符号“>”后面输入要查询的IP地址或域名并回车即可。如果要退出该命

令,输入exit并回车即可。

108、 -------------------------------------------------------

109、 6、ifconfig

110、 ifconfig是Linux系统中最常用的一个用来显示和设置网络设备的工具。其

中“if”是“interface”的缩写。它可以用来设备网卡的状态,或是显示当前的设置。

111、 下面我们简单地说明常用的命令组合:

112、 1) 将第一块网卡的IP地址设置为192.168.0.1:

113、 ifconfig eth0 192.168.0.1 (格式:ifconfig 网络设备名 IP地址)

114、 2) 暂时关闭或启用网卡:

115、 关闭第一块网卡:ifconfig eth0 down

116、 启用第一块网卡:ifconfig eth0 up

117、 3) 将第一块网卡的子网掩码设置为255.255.255.0:

118、 ifconfig eth0 netmask 255.255.255.0(格式:ifconfig 网络设备

名 netmask 子网掩码)

119、 我们也可以同时设置IP地址和子网掩码:

120、 ifconfig eth0 192.168.0.1 netmask 255.255.255.0

121、 4) 将第一块网卡的广播地址设置为192.168.0.255:

122、 ifconfig eth0 -broadcast 192.168.0.255

123、 5) 将第一块网卡设置为不接收多播数据包:

124、 ifconifg eth0 allmulti

125、 如果要让其接收,则使用命令:ifconfig eth0 -allmulti

126、 6) 查看第一块网卡的状态:

127、 ifconfig eth0

128、 如果要查看所有的网卡状态,则直接使用不带参数的ifconfig命令即可。

129、 ifconfig输出的状态信息是十分有用的,下面,我们就简单说明一下:

130、 有几个状态比较重要:

131、 UP/DOWN:网卡是否启动了,如果是DOWN的话,那肯定无法用的;

132、 RX packets中的errors包的数量如果过大说明网卡在接收时有问题;

133、 TX packets中的errors包的数量如果过大说明网卡在发送时有问题;

134、 7、route

135、 route命令是用来查看和设置Linux系统的路由信息,以实现与其它网络的

通讯。要实现两个不同的子网之间的网络通讯,需要一台连接两个网络路由器或者同时位于两个网络的网关来实现。

136、 在Linux系统中,我们通常设置路由是为了解决以下问题:该Linux机器在

一个局域网中,局域网中有一个网关,能够让你的机器访问Internet,那么我们就需要将这台机器的IP地址设置为Linux机器的默认路由。

137、 1) 增加一个默认路由:

138、 route add 0.0.0.0 gw 网关地址

139、 2) 删除一个默认路由:

140、 route del 0.0.0.0 gw 网关地址

141、 3) 显示出当前路由表

142、 route

143、 第二类:诊断工具

1.ping

ping是一个最常用的检测是否能够与远端机器建立网络通讯连接。它是通过Internet控制报文协议ICMP来实现的。而现在有些主机对ICMP进行过滤,在这种特殊的情况下,有可能使得一些主机Ping不通,但能够建立网络连接。这是一种特例,在此事先说明。

同样的,在此不罗列ping命令的所有可选参数,而是通过实例来说明一些常用的组合,需要更详细地了解的,可以通过www.linuxaid.com.cn网站在线培训的命令查询工具获得。

1) 检测与某机器的连接是否正常:

ping 192.168.0.1

ping www.linuxaid.com.cn

也就是说,我们可以用IP地址或域名来指定机器。

2) 指定ping回应次数为4:

在Linux下,如果你不指定回应次数,ping命令将一直不断地向远方机器发送ICMP信息。我们可以通过-c参数来限定:ping -c 4 192.168.0.1

3) 通过特定的网卡进行ping:

有时,我们需要检测某块网卡(系统中有多块)能否ping通远方机器。我们需要在执行ping命令时指出:

ping -I eth0 192.168.0.1

2.traceroute

如果你ping不通远方的机器,想知道是在什么地方出的问题;或者你想知道你的信息到远方机器都经过了哪些路由器,可以使用traceroute命令。顾名思义:trace是跟踪,route是路由,也就是跟踪路由。

使用这个命令很简单:

traceroute 远程主机IP地址或域名

这个命令的输出类似:

1 路由器(网关)的IP地址 访问所需时间1 访问所需时间2 访问所需时间3

2 路由器(网关)的IP地址 访问所需时间1 访问所需时间2 访问所需时间3

………

1) 最前面的数字代表“经过第几站”;

2) 路由器(网关)的IP地址就是“该站”的IP地址;

3) 访问所需时间1、2、3是指访问到这个路由器(网关)需要的时间。

3.netstat

在Linux系统中,提供了一个功能十分强大的查看网络状态的工具:netstat。它可以让您得知整个Linux系统的网络情况。

1)统计出各网络设备传送、接收数据包的情况:

使用命令:netstat -i

这个命令将输出一张表,其中包括:

Iface:网络接口名 MTU:最大传输单元

RX-OK:共成功接收多少个包 RX-ERR:接收的包中共有多少个错误包

RX-DRP:接收时共丢失多少个包 RX-OVR:共接收了多少个碰撞包

TX-OK:共成功发送多少个包 TX-ERR:发送的包中共有多少个错误包

TX-DRP:发磅时共丢失多少个包 TX-OVR:共接收了多少个碰撞包

2)显示网络的统计信息

使用命令:netstat -s

使用这个命令,将会以摘要的形式统计出IP、ICMP、TCP、UDP、TCPEXT形式的通信信息。

3)显示出TCP传输协议的网络连接情况:

使用命令:netstat -t

这个命令的输出也是一张表,其中包括:

Local Address:本地地址,格式是IP地址:端口号

Foreign Address:远程地址,格式也是IP地址:端口号

State:连接状态,包括LISTEN、ESTABLISHED、TIME_WAIT等。

4)只显示出使用UDP的网络连接情况:

使用命令:netstat -t

输出格式也是一样的。

5)显示路由表:

使用命令:netstat -r

这个命令的输出与route命令的输出相同。

5.2 网络配置文件

在Red Hat Linux 7.1中有一些用于存放网络配置的文件:

1./etc/hosts

在该文件中存放的是一组IP地址与主机名的列表,如果在该列表中指出某台主机的IP地址,那么访问该主机时将无需进行DNS解析。

2./etc/host.conf

该文件用来指定域名解析方法的顺序,如:

order hosts,bind

它说明,首先通过/etc/hosts文件解析,如果在该文件中没有相应的主机名与IP地址的对应关系,再通过域名服务器bind进行解析。

3./etc/resolv.conf

在该文件中存放域名服务器的IP地址。

4./etc/protocols

Red Hat Linux 7.1系统使用该文件辨别本主机使用的,并通过它完成协议和协议号之间的映射,用户不应修改该文件。

5./etc/services

该用户用于定义现有的网络服务,用户无需修改它,它通常由安装网络服务的程序来维护。该文件包括网络服务名、网络端口号和使用的协议类型,其中网络端口号和使用的协议类型之间有一个斜杠分开,在设置行的最后还可以添加一些服务的别名。

5./etc/xinetd.d目录

在Linux 系统中有一个超级服务程序inetd,大部分的网络服务都是由它启动的,如chargen、echo、finger、talk、 telnet、wu- ftpd等…,在7.0之间的版本它的设置是在/etc/inetd.conf中配置的,在Red Hat 7.0后,它就改成了一个xinetd.d目录。

在xinetd.d目录中,每一个服务都有一个相应的配置文件,我们以telnet为例,说明一下各个配置行的含义:

service telnet

{

socket_type=stream

wait=no

user=root

server=/usr/sbin/in.telnetd

log_on_failure+=USERID

disable=yes

}

第一行,说明该配置用来设置telnet服务。

第二行,说明Socket连接类型是stream,也就是TCP

第三行,是指不等待到启动完成

第四行,是指以root用户启动服务进程

第五行,是指服务进程是/usr/sbin/in.telnetd

第六行,是用于做一些出错日志

第七行,是指禁止远方telnet,如果需要开放则将该配置改为:disable=no

修改了xinetd的配置,需要重启xinetd才能够生效,有两种方法可以实现:

1) 执行如下命令:

/etc/rc.d/init.d/xinetd restart

2) 执行如下命令:

killall -HUP xinetd

1.hostname

在rc.conf中改动或添加:

hostname=\"yan.com\"

这种改动会产生一些小问题,如:sendmail启动变慢.每次系统启动都需要等待几分钟等.

这是因为:一些软件首先获得hostname.再从hostname中解析相对应的IP地址.如果网络连接比较慢,或者DNS设置不正确,那么DNS解析就需要几分钟时间.

更好的方法是改动完hostname后,也改动/etc/hosts文件,将新的主机名和IP地址的对应关系加入文件中,这样名字解析就可以立即完成了.

2.

网络接口的start与stop由/etc/rc.d/init.d/目录中的network脚本的启动命令:

#/etc/rc.d/init.d/network start

#/etc/rc.d/init.d/network stop

3.

ifconfig eht0 down&<60;&<60;&<60;&<60;&<60; //取消eth0网络接口.

4.

ifup 与 ifconfig up 命令相似

ifdown 与 ifconfig down 命令相似

ifup/ifdown + 网卡设备名

4.

路又分配表存在/proc/net/route文件中.

route添加地址的操作:

route add -net 网络地址 netmask 子网掩码 dev 网卡设备名

如:把会环接口的IP地址添加到路由表中:

route add 127.0.0.1

如:

route add -net 10.0.0.0 netmask 255.0.0.0 dev eth0

del参数删除系统鲜红的路由记录:

route del -net 网络地址 netmask 子网掩码

如:

route del -net 10.0.0.0 netmask 255.0.0.0

通过route命令可以添加和删除当前路由表中的默认网关记录:

route add default gw 网关IP地址 dev 网卡设备名

route del default gw 网关IP地址

5.ping命令:

ping -c 4 211.85.203.22

其中-c参数指定发送ICMP报文的数目

ping命令失败,首先使用traceroute查找发送分组碰到什么问题,其中可能是这些分组被错误路由了.也可能被中间的路由器丢弃,即该网关可能被关闭,也可能是目标主机不工作.

6.traceroute命令跟踪本地和远程两台主机间的UDP路由数据报.用法:traceroute IP地址

7.netstat 查看网络连接状态(仅对TCP有效,对UDP无效),检查接口配置信息,检查路由表,取得统计信息.

netstat参数:

-a :显示所有配置的接口

-i :为显示接口统计信息

-n :以数字形式显示IP地址

-r :显示内核路由表

-s :表示计算器的值

8.nslookup 查询DNS数据库的用户级命令.

可用于查询域名与IP的对应关系

9.tcpdump 用于监视TCP/IP连接并直接读取数据链路层的数据报信息.

如:

1.截获所有211.85.203.22主机收到的和发出的数据包:

#tcpdump host 211.85.203.22

2.获取主机211.85.203.22除了和主机211.85.203.254之外所有主机通信的IP包

#tcpdump ip host 211.85.203.22 and ! 211.85.203.254

3.获取主机211.85.203.22接收或发出的TELNET包

#tcpdump tcp port 23 host 211.85.203.22

下面介绍几种典型的tcpdump命令输出信息

1)数据链路层头信息

#tcpdump --e host ice&<60; (注:ice是一台装有Linux的主机)

...

2)ARP包的TCPDUMP输出信息

#tcpdump arp

3)TCP包输出信息,用tcpdump捕获的TCP包信息

因篇幅问题不能全部显示,请点此查看更多更全内容