📄 linux必学的60个命令(4)-网络操作命令 - linux - whatiswhat.htm
字号:
<TABLE style="BORDER-COLLAPSE: collapse" borderColor=#111111 cellSpacing=0
cellPadding=0 width="90%" align=center border=0>
<TBODY>
<TR>
<TD width=18 height=28><IMG alt=""
src="Linux必学的60个命令(4)-网络操作命令 - Linux - whatiswhat.files/bg_art_left_top.gif"
border=0></TD>
<TD
background="Linux必学的60个命令(4)-网络操作命令 - Linux - whatiswhat.files/bg_art_top.gif">
<P style="MARGIN: 5px; LINE-HEIGHT: 150%"></P></TD>
<TD width=18 height=28><IMG alt=""
src="Linux必学的60个命令(4)-网络操作命令 - Linux - whatiswhat.files/bg_art_right_top.gif"
border=0></TD></TR>
<TR>
<TD width=18
background="Linux必学的60个命令(4)-网络操作命令 - Linux - whatiswhat.files/bg_art_left.gif"></TD>
<TD align=middle bgColor=#f5fdee><BR><FONT style="FONT-SIZE: 14pt"
color=#295200><B>Linux必学的60个命令(4)-网络操作命令</B></FONT>
<TABLE style="BORDER-COLLAPSE: collapse" borderColor=#a5bd6b cellSpacing=1
cellPadding=0 width="100%" border=1>
<TBODY>
<TR>
<TD align=middle>
<TABLE style="BORDER-COLLAPSE: collapse; WORD-WRAP: break-word"
cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD align=middle>
<TABLE
style="BORDER-COLLAPSE: collapse; WORD-WRAP: break-word"
cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD>
<DIV id=art style="MARGIN: 15px">
<DIV class=content><FONT color=#ff0000
size=6><STRONG>Linux必学的60个命令(4)-网络操作命令</STRONG></FONT></DIV><!-- begin content -->
<DIV class=node>
<P
class=content>Linux必学的60个命令:网络操作命令<BR><BR>因为Linux系统是在Internet上起源和发展的,它与生俱来拥有强大的网络功能和丰富的网络应用软件,尤其是TCP/IP网络协议的实现尤为成熟。Linux的网络命令比较多,其中一些命令像
ping、
ftp、telnet、route、netstat等在其它操作系统上也能看到,但也有一些Unix/Linux系统独有的命令,如ifconfig、
finger、mail等。Linux网络操作命令的一个特点是,命令参数选项和功能很多,一个命令往往还可以实现其它命令的功能。</P>
<P class=content><FONT color=#0000ff
size=4>ifconfig</FONT></P>
<P
class=content>1.作用<BR>ifconfig用于查看和更改网络接口的地址和参数,包括IP地址、网络掩码、广播地址,使用权限是超级用户。</P>
<P class=content>2.格式<BR>ifconfig -interface [options]
address</P>
<P class=content>3.主要参数</P>
<P
class=content>-interface:指定的网络接口名,如eth0和eth1。<BR>up:激活指定的网络接口卡。<BR>down:关闭指定的网络接口。<BR>broadcast
address:设置接口的广播地址。<BR>pointopoint:启用点对点方式。<BR>address:设置指定接口设备的IP地址。<BR>netmask
address:设置接口的子网掩码。</P>
<P
class=content>4.应用说明<BR>ifconfig是用来设置和配置网卡的命令行工具。为了手工配置网络,这是一个必须掌握的命令。使用该命令的好处是无须重新启动机器。要赋给eth0接口IP地址207.164.186.2,并且马上激活它,使用下面命令:<BR>#fconfig
eth0 210.34.6.89 netmask 255.255.255.128 broadcast
210.34.6.127</P>
<P
class=content>该命令的作用是设置网卡eth0的IP地址、网络掩码和网络的本地广播地址。若运行不带任何参数的
ifconfig命令,这个命令将显示机器所有激活接口的信息。带有“-a”参数的命令则显示所有接口的信息,包括没有激活的接口。注意,用
ifconfig命令配置的网络设备参数,机器重新启动以后将会丢失。<BR>如果要暂停某个网络接口的工作,可以使用down参数:<BR>#ifconfig
eth0 down</P>
<P class=content><FONT color=#0000ff
size=4>ip</FONT></P>
<P
class=content>1.作用<BR>ip是iproute2软件包里面的一个强大的网络配置工具,它能够替代一些传统的网络管理工具,例如ifconfig、route等,使用权限为超级用户。几乎所有的Linux发行版本都支持该命令。</P>
<P class=content>2.格式<BR>ip [OPTIONS] OBJECT [COMMAND
[ARGUMENTS]]</P>
<P
class=content>3.主要参数<BR>OPTIONS是修改ip行为或改变其输出的选项。所有的选项都是以-字符开头,分为长、短两种形式。目前,ip支持如表1所示选项。</P>
<P class=content>OBJECT是要管理者获取信息的对象。目前ip认识的对象见表2所示。</P>
<P class=content>表1 ip支持的选项</P>
<P class=content>-V,-Version
打印ip的版本并退出。<BR>-s,-stats,-statistics
输出更为详尽的信息。如果这个选项出现两次或多次,则输出的信息将更为详尽。<BR>-f,-family
这个选项后面接协议种类,包括inet、inet6或link,强调使用的协议种类。如果没有足够的信息告诉ip使用的协议种类,ip就会使用默认值inet或any。link比较特殊,它表示不涉及任何网络协议。
<BR></P>
<P class=content>-4 是-family inet的简写。<BR>-6 是-family
inet6的简写。<BR>-0 是-family link的简写。<BR>-o,-oneline
对每行记录都使用单行输出,回行用字符代替。如果需要使用wc、grep等工具处理ip的输出,则会用到这个选项。<BR>-r,-resolve
查询域名解析系统,用获得的主机名代替主机IP地址</P>
<P class=content>COMMAND
设置针对指定对象执行的操作,它和对象的类型有关。一般情况下,ip支持对象的增加(add)、删除(delete)和展示(show或list)。有些对象不支持这些操作,或者有其它的一些命令。对于所有的对象,用户可以使用help命令获得帮助。这个命令会列出这个对象支持的命令和参数的语法。如果没有指定对象的操作命令,ip会使用默认的命令。一般情况下,默认命令是list,如果对象不能列出,就会执行help命令。</P>
<P class=content>ARGUMENTS
是命令的一些参数,它们倚赖于对象和命令。ip支持两种类型的参数:flag和parameter。flag由一个关键词组成;parameter由一个关键词加一个数值组成。为了方便,每个命令都有一个可以忽略的默认参数。例如,参数dev是ip
link命令的默认参数,因此ip link ls eth0等于ip link ls dev
eth0。我们将在后面的详细介绍每个命令的使用,命令的默认参数将使用default标出。</P>
<P
class=content>4.应用实例<BR>添加IP地址192.168.2.2/24到eth0网卡上:<BR>#ip
addr add 192.168.1.1/24 dev eth0</P>
<P class=content>丢弃源地址属于192.168.2.0/24网络的所有数据报:<BR>#ip
rule add from 192.168.2.0/24 prio 32777 reject</P>
<P class=content><FONT color=#0000ff
size=4>ping</FONT></P>
<P class=content>1.作用<BR>ping检测主机网络接口状态,使用权限是所有用户。</P>
<P class=content>2.格式<BR>ping
[-dfnqrRv][-c][-i][-I][-l][-p][-s][-t] IP地址</P>
<P class=content>3.主要参数</P>
<P
class=content>-d:使用Socket的SO_DEBUG功能。<BR>-c:设置完成要求回应的次数。<BR>-f:极限检测。<BR>-i:指定收发信息的间隔秒数。<BR>-I:网络界面使用指定的网络界面送出数据包。<BR>-l:前置载入,设置在送出要求信息之前,先行发出的数据包。<BR>-n:只输出数值。<BR>-p:设置填满数据包的范本样式。<BR>-q:不显示指令执行过程,开头和结尾的相关信息除外。<BR>-r:忽略普通的Routing
Table,直接将数据包送到远端主机上。<BR>-R:记录路由过程。<BR>-s:设置数据包的大小。<BR>-t:设置存活数值TTL的大小。<BR>-v:详细显示指令的执行过程。</P>
<P class=content>ping
命令是使用最多的网络指令,通常我们使用它检测网络是否连通,它使用ICMP协议。但是有时会有这样的情况,我们可以浏览器查看一个网页,但是却无法
ping通,这是因为一些网站处于安全考虑安装了防火墙。另外,也可以在自己计算机上试一试,通过下面的方法使系统对ping没有反应:<BR>#
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all</P>
<P class=content><FONT color=#0000ff
size=4>netstat</FONT></P>
<P class=content>1.作用<BR>检查整个Linux网络状态。 </P>
<P class=content>2.格式<BR>netstat
[-acCeFghilMnNoprstuvVwx][-A][--ip]</P>
<P class=content>3.主要参数</P>
<P
class=content>-a--all:显示所有连线中的Socket。<BR>-A:列出该网络类型连线中的IP相关地址和网络类型。<BR>-c--continuous:持续列出网络状态。<BR>-C--cache:显示路由器配置的快取信息。<BR>-e--extend:显示网络其它相关信息。<BR>-F--fib:显示FIB。<BR>-g--groups:显示多重广播功能群组组员名单。<BR>-h--help:在线帮助。<BR>-i--interfaces:显示网络界面信息表单。<BR>-l--listening:显示监控中的服务器的Socket。<BR>-M--masquerade:显示伪装的网络连线。<BR>-n--numeric:直接使用IP地址,而不通过域名服务器。<BR>-N--netlink--symbolic:显示网络硬件外围设备的符号连接名称。<BR>-o--timers:显示计时器。<BR>-p--programs:显示正在使用Socket的程序识别码和程序名称。<BR>-r--route:显示Routing
Table。<BR>-s--statistice:显示网络工作信息统计表。<BR>-t--tcp:显示TCP传输协议的连线状况。<BR>-u--udp:显示UDP传输协议的连线状况。<BR>-v--verbose:显示指令执行过程。<BR>-V--version:显示版本信息。<BR>-w--raw:显示RAW传输协议的连线状况。<BR>-x--unix:和指定“-A
unix”参数相同。<BR>--ip--inet:和指定“-A inet”参数相同。</P>
<P class=content>4.应用实例<BR>netstat
主要用于Linux察看自身的网络状况,如开启的端口、在为哪些用户服务,以及服务的状态等。此外,它还显示系统路由表、网络接口状态等。可以说,它是一个综合性的网络状态的察看工具。在默认情况下,netstat只显示已建立连接的端口。如果要显示处于监听状态的所有端口,使用-a参数即可:</P>
<P class=content>#netstat -a<BR>Active Internet
connections (only servers)<BR>Proto Recv-Q Send-Q Local
Address Foreign Address State<BR>tcp 0 0 *:32768 *:*
LISTEN<BR>tcp 0 0 *:32769 *:* LISTEN<BR>tcp 0 0 *:nfs
*:* LISTEN<BR>tcp 0 0 *:32770 *:* LISTEN<BR>tcp 0 0
*:868 *:* LISTEN<BR>tcp 0 0 *:617 *:* LISTEN<BR>tcp 0 0
*:mysql *:* LISTEN<BR>tcp 0 0 *:netbios-ssn *:*
LISTEN<BR>tcp 0 0 *:sunrpc *:* LISTEN<BR>tcp 0 0 *:10000
*:* LISTEN<BR>tcp 0 0 *:http *:* LISTEN<BR>......</P>
<P
class=content>上面显示出,这台主机同时提供HTTP、FTP、NFS、MySQL等服务。</P>
<P class=content><FONT color=#0000ff
size=4>telnet</FONT></P>
<P
class=content>1.作用<BR>telnet表示开启终端机阶段作业,并登入远端主机。telnet是一个Linux命令,同时也是一个协议(远程登陆协议)。</P>
<P class=content>2.格式<BR>telnet
[-8acdEfFKLrx][-b][-e][-k][-l][-n][-S][-X][主机名称IP地址<通信端口>]</P>
<P class=content>3.主要参数</P>
<P
class=content>-8:允许使用8位字符资料,包括输入与输出。<BR>-a:尝试自动登入远端系统。
<BR></P>
<P
class=content>-b:使用别名指定远端主机名称。<BR>-c:不读取用户专属目录里的.telnetrc文件。<BR>-d:启动排错模式。<BR>-e:设置脱离字符。<BR>-E:滤除脱离字符。<BR>-f:此参数的效果和指定“-F”参数相同。<BR>-F:使用Kerberos
V5认证时,加上此参数可把本地主机的认证数据上传到远端主机。<BR>-k:使用Kerberos认证时,加上此参数让远端主机采用指定的领域名,而非该主机的域名。<BR>-K:不自动登入远端主机。<BR>-l:指定要登入远端主机的用户名称。<BR>-L:允许输出8位字符资料。<BR>-n:指定文件记录相关信息。<BR>-r:使用类似rlogin指令的用户界面。<BR>-S:服务类型,设置telnet连线所需的IP
TOS信息。<BR>-x:假设主机有支持数据加密的功能,就使用它。<BR>-X:关闭指定的认证形态。</P>
<P
class=content>4.应用说明<BR>用户使用telnet命令可以进行远程登录,并在远程计算机之间进行通信。用户通过网络在远程计算机上登录,就像登录到本地机上执行命令一样。为了通过
telnet登录到远程计算机上,必须知道远程机上的合法用户名和口令。虽然有些系统确实为远程用户提供登录功能,但出于对安全的考虑,要限制来宾的操作权限,因此,这种情况下能使用的功能是很少的。</P>
<P
class=content>telnet只为普通终端提供终端仿真,而不支持X-Window等图形环境。当允许远程用户登录时,系统通常把这些用户放在一个受限制的Shell中,以防系统被怀有恶意的或不小心的用户破坏。用户还可以使用telnet从远程站点登录到自己的计算机上,检查电子邮件、编辑文件和运行程序,就像在本地登录一样。</P>
<P class=content><FONT color=#0000ff
size=4>ftp</FONT></P>
<P
class=content>1.作用<BR>ftp命令进行远程文件传输。FTP是ARPANet的标准文件传输协议,该网络就是现今Internet的前身,所以ftp既是协议又是一个命令。</P>
<P class=content>2.格式<BR>ftp [-dignv][主机名称IP地址]</P>
<P class=content>3.主要参数</P>
<P
class=content>-d:详细显示指令执行过程,便于排错分析程序执行的情形。<BR>-i:关闭互动模式,不询问任何问题。<BR>-g:关闭本地主机文件名称支持特殊字符的扩充特性。<BR>-n:不使用自动登陆。<BR>-v:显示指令执行过程。</P>
<P class=content>4.应用说明<BR>ftp
命令是标准的文件传输协议的用户接口,是在TCP/IP网络计算机之间传输文件简单有效的方法,它允许用户传输ASCⅡ文件和二进制文件。为了使用ftp
来传输文件,用户必须知道远程计算机上的合法用户名和口令。这个用户名/口令的组合用来确认ftp会话,并用来确定用户对要传输的文件进行什么样的访问。另外,用户需要知道对其进行ftp会话的计算机名字的IP地址。</P>
<P
class=content>用户可以通过使用ftp客户程序,连接到另一台计算机上;可以在目录中上下移动、列出目录内容;可以把文件从远程计算机机拷贝到本地机上;还可以把文件从本地机传输到远程系统中。ftp内部命令有72个,下面列出主要几个内部命令:</P>
<P
class=content>ls:列出远程机的当前目录。<BR>cd:在远程机上改变工作目录。<BR>lcd:在本地机上改变工作目录。<BR>close:终止当前的ftp会话。<BR>hash:每次传输完数据缓冲区中的数据后就显示一个#号。<BR>get(mget):从远程机传送指定文件到本地机。<BR>put(mput):从本地机传送指定文件到远程机。<BR>quit:断开与远程机的连接,并退出ftp。</P>
<P class=content><FONT color=#0000ff
size=4>route</FONT></P>
<P class=content>1.作用<BR>route表示手工产生、修改和查看路由表。</P>
<P class=content>2.格式<BR>#route [-add][-net|-host]
targetaddress [-netmask Nm][dev]If]<BR>#route
[-delete][-net|-host] targetaddress [gw Gw] [-netmask
Nm] [dev]If]</P>
<P class=content>3.主要参数</P>
<P
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -