`
xumingrencai
  • 浏览: 1177328 次
文章分类
社区版块
存档分类
最新评论

linux 常用网络命令

 
阅读更多

在Red Hat Linux 7.1系统提供了与网络相关的工具,掌握好这些工具是十分必要的:
   第一类:设置工具
   1.netconf:
   netconf是Red Hat Linux提供的Linuxconf的一部分,主要用于设置与网络相关的参数。它可以在consle下运行(文本菜单),也可以在X-Window中运行(图形界面)。在前面,我们介绍过了netconf的一些应用,它的使用比较简单,只要认识上面的英文就可以了,所以在此就不再多说。BTW,如果你设置好了X-Window的话,用用图形界面的netconf,会更漂亮的哟。
   2.ifconfig
   ifconfig是Linux系统中最常用的一个用来显示和设置网络设备的工具。其中“if”是“interface”的缩写。它可以用来设备网卡的状态,或是显示当前的设置。
   下面我们简单地说明常用的命令组合:
   1) 将第一块网卡的IP地址设置为192.168.0.1:
   ifconfig eth0 192.168.0.1 (格式:ifconfig 网络设备名 IP地址)
   2) 暂时关闭或启用网卡:
   关闭第一块网卡:ifconfig eth0 down
   启用第一块网卡:ifconfig eth0 up
   3) 将第一块网卡的子网掩码设置为255.255.255.0:
   ifconfig eth0 netmask 255.255.255.0(格式:ifconfig 网络设备名 netmask 子网掩码)
   我们也可以同时设置IP地址和子网掩码:
   ifconfig eth0 192.168.0.1 netmask 255.255.255.0
   4) 将第一块网卡的广播地址设置为192.168.0.255:
   ifconfig eth0 –broadcast 192.168.0.255
   5) 将第一块网卡设置为不接收多播数据包:
   ifconifg eth0 allmulti
   如果要让其接收,则使用命令:ifconfig eth0 -allmulti
   6) 查看第一块网卡的状态:
   ifconfig eth0
   如果要查看所有的网卡状态,则直接使用不带参数的ifconfig命令即可。
   ifconfig输出的状态信息是十分有用的,下面,我们就简单说明一下:
   有几个状态比较重要:
   ? UP/DOWN:网卡是否启动了,如果是DOWN的话,那肯定无法用的;
   ? RX packets中的errors包的数量如果过大说明网卡在接收时有问题;
   ? TX packets中的errors包的数量如果过大说明网卡在发送时有问题;
   3.route
   route命令是用来查看和设置Linux系统的路由信息,以实现与其它网络的通讯。要实现两个不同的子网之间的网络通讯,需要一台连接两个网络路由器或者同时位于两个网络的网关来实现。
   在Linux系统中,我们通常设置路由是为了解决以下问题:该Linux机器在一个局域网中,局域网中有一个网关,能够让你的机器访问Internet,那么我们就需要将这台机器的IP地址设置为Linux机器的默认路由。
   1) 增加一个默认路由:
   route add 0.0.0.0 gw 网关地址
   2) 删除一个默认路由:
   route del 0.0.0.0 gw 网关地址
   3) 显示出当前路由表
   route

   第二类:诊断工具
   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
  
   5.3 网络服务访问限制
   在Red Hat Linux 7.1中加强了网络安全的防范,如果你安装时安全等级不是在最低一级的话,那么本机之外的所有访问都可能被拒绝。这是因为在Red Hat 7.1中做了一些默认的ipchains设置,这是Linux内置的防火墙机制,它可以使用一些规则来允许或禁止某种访问。
   它的规则存放在/etc/sysconfig/ipchains文件中,如果你想让它暂时不生效,那你可以运行/etc/rc.d/init.d/ipchains stop,那么所有的规则都被取消,所有的网络访问都将被允许。
   你可以运行/etc/rc.d/init.d/ipchains status来获知现在对网络访问的限制。关于这方面的知识,本文限于篇幅无法详细介绍,有兴趣的读者可参考《Linux防火墙》一书。

   5.4 WEB服务器
   在Linux系统中最适合于做服务器的当数Apache,Red Hat Linux 7.1中集成了Apache 1.3.19版,你只要在安装时选中WEB服务器,那么系统将自动完成Apache服务器的安装,在默认情况,WWW服务就已经启动了。
  如果你在安装时没有选择WEB服务器包,那也没有关系,你只需执行以下命令即可:
   1) 将Red Hat Linux 7.1安装光盘的第一张放入光驱,然后执行如下命令:
   # mount /mnt/cdrom
   2) 转到apache安装文件所在目录:
   # cd /mnt/cdrom/RedHat/RPMS
   3) 使用RPM完成安装:
   # rpm –ivh apache-1.3.19-5.i386.rpm
   现在,你就已经拥有一个基于Linux的WEB服务器了,它的配置文件位于/etc/httpd/conf目录下,你可根据需要进行相应的修改,修改完后执行:/etc/rc.d/init.d/httpd restart即可。而WEB服务的主目录则在/var/www/html目录下,你可以将你的WEB页传到这里就可以更新了。
   而如果每一个用户都想要拥有一个自己的主页的话,则:
   1) 首先在自己的用户主目录下建一个public_html目录:
   # cd
   # mkdir public_html
   2) 然后将自己的用户主目录的权限改为大家可读
   # chmod 755 用户主目录
   3) 这样你就可以使用“localhost/~用户名/”访问到每个用户的主页了。
  
   5.5 FTP服务器
   在Red Hat Linux 7.1中集成了Wu-FTP 2.6.1做为FTP服务器,在你安装时只要选择了FTP包的话,那么你的Linux服务器就是一台FTP服务器了,如果当时没有安装的话,也没有关系,跟安装apache一样:
   1) 将Red Hat Linux 7.1安装光盘的第一张放入光驱,然后执行如下命令:
   # mount /mnt/cdrom
   2)转到wu-ftp安装文件所在目录:
   # cd /mnt/cdrom/RedHat/RPMS
   3)使用RPM完成安装:
   # rpm –ivh wu-ftp-2.6.1-16.i386.rpm
   由于FTP服务是由xinetd超级服务器创建的,所以关于FTP服务器的配置在/etc/xinetd.d目录下的wu-ftpd文件中:
   service ftp
   {
   socket_type=stream
   wait=no
   user=root
   server=/usr/sbin/in.ftpd
   server_args=-l –a
   log_on_success+=DURATION USERID
   log_on_failure+=USERID
   nice=10
   disable=no
   }
   下面,我们介绍一些关于FTP服务器的管理方法:
   1、 暂时关闭FTP服务
   有两种方法可以使FTP服务暂停:
   1) 以root用户身份执行:
   # ftpshut now
   这样就会在/etc目录下生成一个shutmsg的文件,这时FTP服务器将无法使用,直到你删掉这个文件。
   2) 修改配置文件/etc/xinetd.d/wu-ftpd,将disable=no改为disable=yes,然后重启xinetd。
   2、 禁止某用户使用FTP服务
   有两种方法可以禁止某用户使用FTP服务器:
   1) 在/etc/ftpuser中写入该用户帐号名
   2) 在/etc/ftpaccess中写入一行配置:
   deny-uid 用户名
   用这种方法还可以禁止一个组的用户使用
   deny-gid 组名
   3、 禁止匿名用户(anonymous)登录FTP服务器
   有许多种方法可以实现,但我觉得最简单有效的方法就是将anonymous写入配置文件:/etc/ftpuser中,就可了。

   5.6 文件服务器
   我们还可以使用Red Hat Linux 7.1内置的Samba为局域网内的Windows主机做文件服务器。如果在安装系统时选择了SMB服务器软件包的话,那么安装完以后,Samba服务就已经Ready了。
   不过为了方便配置,建议安装一下swat,它提供了一个WEB界面的配置工具。它的安装包是第二张光盘的/RedHat/RPMS/samba-swat-2.0.7-36.i386.rpm。
   安装完以后,它会在xinetd.d目录中新建一个swat文件,其内容为:
   service swat
   {
   port=901
   socket_type=stream
   wait=no
   only_from=127.0.0.1
   server=/usr/sbin/swat
   log_on_failure+=USERID
   disable=yes
   }
   我们看到disable的值是yes,也就是说,现在swat还没有启用,因此,我们需要将其改为disable=no,然后重启xinted。另外,由于这里有一句:
   only_from=127.0.0.1
   说明只能在本机使用swat,而如果你想在Windows中用IE来配置的话,请将这句注释掉或删掉。
   下面,我们以设置一个大家都可以访问的homes目录为例,说明SWAT的设置方法:
   1) 打开IE浏览器,在地址栏上输入Linux的主机名或IP以及“:901”,例如:
   http://192.168.0.1:901
   2) 如果连接正常,将出一个登录提示窗,要求输入用户名与密码,在此以root为用户名,并输入root用户的密码,再单击确定;
   3) 如果输入无误,将出现Samba的配置界面:Swat的首页;
   我们可以看到在Swat界面中,最上面有7个图标,分别是:HOME(首页)、GLOBALS(全局设置)、SHARES(共享设置)、PRINTERS(打印机)、STATUS(状态)、VIEW(查看)、PASSWORD(密码)
  4) 首先,我们单击GLOBALS图标,将出现GLOBALS设置页面,其中我们对以下几项进行设置:
  ? BaseOption à Workgroup:在些输入工作组名(如NetBIOS中的工作组名)
  ? BaseOption à Netbios name:主机名
  ? SecurityOption à Security:选择安全等级,在些选择“SHARE”
  ? SecurityOption à hosts allow:允许的主机,通常写入你的网络号,如192.168.0.
  ? SecurityOption à hosts deny:如果你不让某台机器使用,则写入它的IP地址
  修改完后,点击“Commit Changes”按钮(在7个图标的下边一些),保存设置。
  5) 然后,单击SHARES图标,进行共享设置:
  第一步:在Create Share按钮的右边文本框中输入要设置的共享名
  第二步:单击“Create Share”按钮;
  第三步:确认“BaseOptions à Path的值为你想共享的目录,例如/home/smb/test(注意这必须是已经存在的目录);
  第四步:将“SecurityOptions à writeable”的值设置为Yes,使该目录共享为可写;
  第五步:将“SecurityOptions à guest ok”的值设置为Yes,使该目录无需密码访问;
  第六步:在“SecurityOptionsàhosts allow、hosts deny”中设置相应的主机IP;
  第七步:将“BrowseOptionsàbrowseable”设置为Yes,使其便于使用
  最后,点击“Commit Changes”按钮,保存设置。
  现在,我们就可以在Windows 9x上通过网络邻居访问到这台Samba服务器,并且有一个可读、可写的共享目录。
  在平时使用的时间,系统管理员可以点击“STATUS”按钮,切换到状态页面对其进行监测,在这个页面上,你可以:
  1) 启动(Start smbd按钮)、停止Samba(Stop Smbd按钮)服务,以及重启服务(Restart smbd按钮);
  2) 另外,你可以看到当前与Samba服务器建立的连接(Active Connections),并且可以按下“X”按钮,中止它的访问;
   3) 同时你还可以检测到正在访问的文件夹(Active Shares),正打开的文件(Open Files)。
  Samba服务还可以对用户进行认证,与Window NT域进行集成等强大的功能,在些限于篇幅就不详细介绍,有兴趣的读者可以参考《实战Samba》一书。

  后记
  通过一段时间的使用,发现Red Hat Linux 7.1无论安装还是使用,都越来越注重易用性,大量使用了华丽的图形界面,大有发兵桌面之势。而且集成了大量软件的最新版,可谓性能卓越,不过可谓“成也萧何、败也萧何”,我在试用的过程出现了一次启动KDE时死机(这可是在以前的版本中难得一见的!)造也了系统崩溃,估计是XFree86 4的BUG造成的。另外,优秀的图形界面使得整个X Window变成十分缓慢,所以说易用性与性能总是无法两全的。
   不管怎么说,从Red Hat Linux 7.1丰富的应用软件,高效的网络性能,较好的图形界面都说明Linux越来越成熟,相信在众多知名IT厂商的大力扶持下,将迎来美好的明天。

分享到:
评论

相关推荐

    Linux常用网络命令

    Linux常用网络命令

    Linux 常用网络命令

    有关linux的一些常用命令。

    Linux常用命令教学视频

    04.1.1 Linux常用命令-文件处理命令-命令格式与目录处理命令ls.mp4 04.1.2 Linux常用命令-文件处理命令-目录处理命令.mp4 ...04.7 Linux常用命令-网络命令.mp4 04.8 Linux常用命令-关机重启命令.mp4

    Linux常用命令大全

    Linux常用命令全集.CHM Linux vi命令大全.txt liunx命令大全.txt liunx 下如何用命令行设置网络?.txt 请问怎么设置DNS的命令?.txt Red Hat Linux下配置Tomcat+JSP+Apache服务器的步骤.txt Linux 下 Apache 与 ...

    最全Linux常用命令大全.pdf

    1.Linux管理文件和目录的命令 2.有关磁盘空间的命令 3.文件备份和压缩命令 4.文件备份和压缩命令 5.管理使用者和设立权限的命令 6 线上查询的命令 7.文件阅读的命令 8.网络操作命令 9.定位、查找文件的命令 10.其他...

    Linux必学的60个命令(5)-网络安全

    linux必须掌握的60个命令,有助于LINUX的入门学习与进阶

    Linux网络命令大全

    计算机网络的主要优点是能够实现资源和信息的共享...Linux提供了一组强有力的网络命令来为用户服务,这些工具能够帮助用户登录到远程计算机上、传输文件和执行远程命令等。 本章介绍下列几个常用的有关网络操作的命令:

    Linux系统常用命令快速入门\Linux网络配置之IP命令手册·rar.rar

    \Linux系统常用命令快速入门\Linux网络配置之IP命令手册·rar.rar

    LINUX终端常用命令 课件 PPT

    LINUX终端常用命令文件和目录操作 3.2 文件压缩和归档 3.3 文件系统命令 3.4 用户管理命令 3.5系统管理命令 3.6网络管理命令 3.7 软件包管理命令rpm 学习目的要求 ...掌握常用网络命令的使用。

    Linux的常用网络命令

    Linux的常用网络命令

    Linux常用的网络命令

    Linux常用的网络命令,学习linux需要学习的网络命令

    linux常用命令PPT文档

    常用linux命令。linux入门经典,包括文件管理,文档管理,系统管理,网络通讯等基本命令

    Linux网络常用命令

    linux常用网络等命令,适合linux入门学习。

    Linux和Unix系统中最常用的网络命令

    Linux和Unix系统中最常用的网络命令

    Linux 的常用网络命令

    Linux提供了一组强有力的网络命令来为用户服务,这些工具能够帮助用户登录到远程计算机上、传输文件和执行远程命令等。 本章介绍下列几个常用的有关网络操作的命令: ftp 传输文件 telnet 登录到远程计算机上 ...

    linux系统常用命令.pdf

    Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。...linux系统常用命令归纳

    网络安全学习linux部分命令

    兄弟连Linux常用命令 1.1命令格式 Linux命令格式 ​ 命令 [-选项] [参数] ​ ctrl+l清屏 1.2目录处理命令 1. ls----显示目录文件 ​ 组里每个成员都享有这个组的权限 ​ -d 查看目录属性 显示目录本身,而不...

    linux网络命令详解.doc

    就是常见的Linux命令 希望对大家有用

Global site tag (gtag.js) - Google Analytics