扫一扫
关注微信公众号

在Linux系统下网络详细解答(1)
2006-08-21   塞迪网

Linux作为一种主要用于网络环境的操作系统,有着空前强大的网络功能。如何在Linux系统中安装、配置、使用网络,使其高效、安全地工作十分重要。本文对Linux主机的网络设备的安装、配置、调试、网络服务的设置以及Linux系统的网络使用进行详细的讲解。最后,还就Linux系统的安全性知识及技巧作简单介绍。

1. Linux下的网络安装、配置及调试

将Linux接入Internet的方法很多,最常见而且快捷方便的方法是以局域网的形式接入。此时就涉及到Linux系统下一块或多块网卡的安装。对于以太网卡,Linux在操作系统的安装过程中会自动检测到并自动配置内核以便系统能使用该网卡。只需根据安装程序的提示给出tcp/ip的配置参数,如本机的ip地址、DNS的ip地址等等,安装程序将会自动把系统支持的网卡驱动程序编译到内核中。

对于非以太网卡或者要在原有的基础上增加网卡的情况下,或者系统本身不支持现有的网卡时,就得自己动手安装网卡了。其实这并不难,只要了解了加载网卡驱动程序的过程。在Linux系统中,网卡的驱动程序是作为模块加载到内核中的,正因为如此,当没有网卡的驱动程序时,可以到网上去下载驱动程序的源文件,甚至可以自己动手编写网卡的驱动程序,然后以模块的形式将其编译到内核中去。所有Linux支持的网卡驱动程序都存放在目录/lib/modules /Linux版本号/net/,我们可以通过修改模块配置文件来更换网卡或增减网卡。

在etc目录下的conf.modules配置文件是加载模块的一个重要的参数文件,在这个文件中,指明了系统要加载的网卡的驱动程序:

#/etc/conf.modules 
…… 
alias eth0 eepro100 
alias eth1 ne 
options ne io=0x300 irp=5 
……

这一段文字说明了该Linux系统装了两块网卡,其中alias命令指出以太网口所具有的驱动程序的名称,即在0号以太网口需要加载的网卡驱动程序是eepro100.o,而1号以太网口要加载的是ne.0。大家一定已经注意到了在1号口下有options一项附加命令,指明了该网卡的io地址和中断号。这是因为对于pci网卡,系统会自动找到网卡的io地址和中断号,所以不必用options选项来指定网卡的io地址和中断号;而对于ISA网卡,则必须要在该配置文件中用options选项指明该网卡的io地址和中断号。

修改完conf.modules配置文件后,用命令inmod就可以以模块的形式将网卡驱动程序加载到内核,加载完后还可以用lsmod命令来查看当前加载的模块的信息。

配置网卡的方法并非只有这一种,用命令netconf或netconfig也能完成网卡的配置工作,netconfig命令是重新配置基本的TCP/IP参数,这些参数包括是否配置为动态获得ip地址(dhcpd和bootp)、子网掩码、缺省网关及域名服务器地址等;netconf命令用于详细配置所有的网络参数,包括客户端任务(主机名、有效域名、网络别名、网卡的ip地址、网络掩码、接口名、网卡驱动程序、DNS地址、缺省网关地址、NIS地址、ipx借口,ppp/slip等),服务器端任务(NFS、DNS、ApacheWebServer、Samba、Wu-ftpd等)和其他配置三部分。在超级用户下键入netconf命令,然后只需根据系统给出的选项填入相应的信息即可,同样,对于PCI网卡,甚至不必填写硬件的io地址和中断号;与此同时,你还可以指定该网卡是否可用,其TCP/IP网络的ip地址及子网掩码等。随着Linux图形界面的发展,同样,在Xwindows下运行该命令,Linux提供了类似于windows的方便简单的图形配置方式。其实,在修改完conf.modules配置文件后,同样需要用命令netconf或ifconfig来配置TCP/IP网络参数,因为,上面的工作只是将网卡的驱动程序加载到内核中使其可用而已。

其实,通过修改lilo.conf文件一样可以将网卡加载到系统内核。但对于一些比较新的Linux版本来说,操作系统能够自动检测到所有相关的硬件,完全没有必要修改lilo.conf文件。如果遇到的是ISA网卡和老的Linux版本。为了使系统初始化时能够对我们新插入的网卡进行初始化,可以修改lilo.conf文件:

用vi命令打开lilo.conf文件,在文件中添加如下语句:

append="ether=5,0x300,eth0 ether=7,0x500,eth1"

这样,系统同样能够配置好网卡(在上面的语句中是两块)。

配置好网卡后,要做的工作就是配置和调试TCP/IP网络了。上面已经讲了,可以用命令netconf来进行TCP/IP的参数配置。

之后,可以用ifconfig命令来调试网络。在Linux系统中,用命令ifconfig -a可以显示系统中所有的网络接口的信息,如:

eth0 link encap:Ethernet Hwaddr 00:0E:5F:1A 
inet addr:202.206.19.87 Bcast:202.206.112.3 Mask:255.255.255.0 
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 
PX packet:435510 errors:0 droped:0 overruns:0 frame:2 
TX packet 339781 errors:0 dropped:0 overruns:0 carrier:0 
Collisions:228938 txqueuelen:100 
Interrupt:10 Base address 0x1800 
eth1 link encap:Ethernet Hwaddr 4A:08:3D:00 
inet addr:129.1.1.6 Bcast:129.0.0.0 Mask:255.255.255.0 
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 
PX packet:489 errors:0 droped:0 overruns:0 frame:2 
TX packet 34 errors:0 dropped:0 overruns:0 carrier:0 
Collisions:2 txqueuelen:100 
Interrupt:9 Base address 0x1800 
lo Link encap:Local Loopback 
inet addr:127.0.0.1 Mask:255.0.0.0 
UP LOOPBACK RUNNING MTU:3900 Metric:1 
PX packets:3880 errors:0 dropped:0 overrun:0 frame: 
TX packets:3800 errors:0 dropped:0 overrun:0 carrier:0 
Collisions:0 txqueue:0

热词搜索:

上一篇:linux操作系统中关机问题详解
下一篇:在Linux系统下网络详细解答(2)

分享到: 收藏