Linux 查看网卡全双工 还是半双工 以及设置网卡为半双工

Linux 查看网卡全双工 还是半双工 以及设置网卡为半双工 2
2010-05-06 14:37
2.2 ethtool 设置网卡的协商模式;

在ethtool的-h帮助中我们查看到有这样的帮助信息;

ethtool -s DEVNAME /
[ speed 10|100|1000 ] /
[ duplex half|full ] /
[ port tp|aui|bnc|mii|fibre ] /
[ autoneg on|off ] /

* 实例一: 把网卡eth0 速度改为10Mb/s,采用半双工;

[root@cuc03 beinan]# ethtool -s eth1 speed 10 duplex half
[root@cuc03 beinan]# ethtool eth1
Settings for eth1:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: No
Speed: 10Mb/s 注:速度 10M/s
Duplex: Half 注:半双工
Port: MII
PHYAD: 32
Transceiver: internal
Auto-negotiation: off
Supports Wake-on: pumbg
Wake-on: d
Current message level: 0x00000007 (7)
Link detected: no 注:eth1没有激活;

* 实例二: 把网卡eth0 速度改为100Mb/s,采用全双工;

[root@cuc03 beinan]# ethtool -s eth1 speed 100 duplex full
[root@cuc03 beinan]# ethtool eth1
Settings for eth1:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: No
Speed: 100Mb/s 注:速度 100M/s
Duplex: Full 注:全双工
Port: MII
PHYAD: 32
Transceiver: internal
Auto-negotiation: off
Supports Wake-on: pumbg
Wake-on: d
Current message level: 0x00000007 (7)
Link detected: no 注:eth1网卡没有激活;



3、关于本文;

本文是限定在改变网络协商方式和改变网络接口的速度为范围而写的,我对网络不熟悉,想把ethtool 详细写一写,可是我的功力不足。还是请高手写一写为好。谢谢;

—— 北南南北 at LinuxSir.Org 2006/07/08


4、修改日志;

2006/07/08 v0.1b 初稿完成


Linux网络的管理员的经验:网卡要匹配(图)
作者:请作者联系 文章来源:5dmail 点击数:569 更新时间:2006-4-12 8:53:25
笔者是一个Linux网络的管理员,网络拓扑如图1。在局域网内,有两台关键的服务器,一个是主服务器、一个是备份服务器,中间通过心跳线连接。服务器A使用红旗 Linux 4.0,作为文件服务器。

心跳线是用于连接A、B两台服务器间的网线。在这两台服务器A、B中,A为工作机,B为备份机。在服务器上都配有两块网卡,其中一块专门用于 两台服务器(节点)间的通讯。安装在服务器上的软件通过心跳线来实时监测对方的运行状态。系统在运行中一旦发现服务器出现故障,可以把该服务器上的所有进 程转移到备份服务器上,从而为客户提供不间断的服务。同时,还具有系统崩溃的智能检测与处理系统,可以利用各种手段来检测硬件、存储设备、网络及系统软件 的故障。这样可以在最大限度上保证网络的正常运行,这也称为“心跳检测”。心跳线主要利用一条RS-233检测链路来完成。采用ping命令方式检测验证 系统宕机检测的准确性。

一天,发现Linux服务器A连接心跳线的网卡由于硬件的磨损老化(RTL8139AS、100M),出现物理故障。随即到计算机市场购买一 块最常见的10Mb/100Mb自适应网卡—Realtek多功能模块(Multifunction Mode)单芯片RTL 8139D(L)的网卡。它的兼容性很好,几乎可以工作在所有Linux主要发行版本。安装过程很顺利,系统自动识别。两台机器都可正常运行,设置网卡 IP地址后,发现通过心跳线服务器A和服务器B却不能连通。由于心跳线是通过网卡相连来检测服务器状态的,所以要重点查看每台机器心跳线连接的网卡状态及 配置,可经检查网卡状态并没有问题,网卡灯也是亮的。难道是网线没插好或是有问题?重新用一根确认正常的网线替换下原网线,可是两个服务器之间的心跳线还 是不通,至此已基本排除了硬件方面的问题,估计还是网卡的设置有问题。进入两台机器的网卡状态选项,将两台机器的网卡状态一项一项地进行比较。


1.首先查看Linux服务器A网卡现在的工作模式,输入命令:

#mii-tool -v
eth0: negotiated 100baseTx-FD, link ok
product info: vendor 00:00:00, model 0 rev 0
basic mode: autonegotiation enabled
basic status: autonegotiation complete, link ok
capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
link partner: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
从以上信息中可以看出,这块网卡工作在10M全双工自适应模式下,“10BaseTx-FD”意为10M Full Duplex。而服务器B连接心跳线网卡工作在100Mbit/s全双工状态下。

原来服务器A,B使用的是都是10/100Mbit/s自适应以太网卡,设计速度为100Mbit/s。服务器A更换新网卡后,网卡自动选择状态为10M全双工自适应模式。由于两边网卡所选择的工作状态不一致,导致网络不通。

2.下面我们查看如何修改网卡工作模式输入命令:

#mii-tool --help
usage: mii-tool [-VvRrwl] [-A media,... | -F media] [interface ...]
media: 100baseT4, 100baseTx-FD, 100baseTx-HD, 10baseT-FD, 10baseT-HD,
(to advertise both HD and FD) 100baseTx, 10baseT
media可选的模式有100baseTx-FD、100baseTx-HD、10baseT-FD、10baseT-HD等。Interface代表所选择的网卡,如eth0、eth1等,默认为eth0。

3.修改网卡工作在10M双工模式下,输入命令:#mii-tool -F 100baseTx-FD eth0

再使用ping命令检测连接状态,结果显示连接正常,问题解决。

目前有许多自适应的网卡,按照原理,应能正确适应速率和双工方式,但实际上,由于品牌的不一致,往往不能正确实现全双工方式。只有手工强制设 定才能解决。因此,我们在设置网络设备参数时,一定要参考服务器或者其他工作站上的网络设备参数,尽量能使各个设备匹配工作。另外大家在使用自适应网卡时 最好设置一个初始的速率,且最好两边速率相同,而不要使用自适应。速率设置的问题常常会导致网络时断时续。笔者是一个Linux网络的管理员,网络拓扑如 图1。在局域网内,有两台关键的服务器,一个是主服务器、一个是备份服务器,中间通过心跳线连接。服务器A使用红旗 Linux 4.0,作为文件服务器。

心跳线是用于连接A、B两台服务器间的网线。在这两台服务器A、B中,A为工作机,B为备份机。在服务器上都配有两块网卡,其中一块专门用于 两台服务器(节点)间的通讯。安装在服务器上的软件通过心跳线来实时监测对方的运行状态。系统在运行中一旦发现服务器出现故障,可以把该服务器上的所有进 程转移到备份服务器上,从而为客户提供不间断的服务。同时,还具有系统崩溃的智能检测与处理系统,可以利用各种手段来检测硬件、存储设备、网络及系统软件 的故障。这样可以在最大限度上保证网络的正常运行,这也称为“心跳检测”。心跳线主要利用一条RS-233检测链路来完成。采用ping命令方式检测验证 系统宕机检测的准确性。

一天,发现Linux服务器A连接心跳线的网卡由于硬件的磨损老化(RTL8139AS、100M),出现物理故障。随即到计算机市场购买一 块最常见的10Mb/100Mb自适应网卡—Realtek多功能模块(Multifunction Mode)单芯片RTL 8139D(L)的网卡。它的兼容性很好,几乎可以工作在所有Linux主要发行版本。安装过程很顺利,系统自动识别。两台机器都可正常运行,设置网卡 IP地址后,发现通过心跳线服务器A和服务器B却不能连通。由于心跳线是通过网卡相连来检测服务器状态的,所以要重点查看每台机器心跳线连接的网卡状态及 配置,可经检查网卡状态并没有问题,网卡灯也是亮的。难道是网线没插好或是有问题?重新用一根确认正常的网线替换下原网线,可是两个服务器之间的心跳线还 是不通,至此已基本排除了硬件方面的问题,估计还是网卡的设置有问题。进入两台机器的网卡状态选项,将两台机器的网卡状态一项一项地进行比较。


1.首先查看Linux服务器A网卡现在的工作模式,输入命令:

#mii-tool -v
eth0: negotiated 100baseTx-FD, link ok
product info: vendor 00:00:00, model 0 rev 0
basic mode: autonegotiation enabled
basic status: autonegotiation complete, link ok
capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
link partner: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
从以上信息中可以看出,这块网卡工作在10M全双工自适应模式下,“10BaseTx-FD”意为10M Full Duplex。而服务器B连接心跳线网卡工作在100Mbit/s全双工状态下。

原来服务器A,B使用的是都是10/100Mbit/s自适应以太网卡,设计速度为100Mbit/s。服务器A更换新网卡后,网卡自动选择状态为10M全双工自适应模式。由于两边网卡所选择的工作状态不一致,导致网络不通。

2.下面我们查看如何修改网卡工作模式输入命令:

#mii-tool --help
usage: mii-tool [-VvRrwl] [-A media,... | -F media] [interface ...]
media: 100baseT4, 100baseTx-FD, 100baseTx-HD, 10baseT-FD, 10baseT-HD,
(to advertise both HD and FD) 100baseTx, 10baseT
media可选的模式有100baseTx-FD、100baseTx-HD、10baseT-FD、10baseT-HD等。Interface代表所选择的网卡,如eth0、eth1等,默认为eth0。

3.修改网卡工作在10M双工模式下,输入命令:#mii-tool -F 100baseTx-FD eth0

再使用ping命令检测连接状态,结果显示连接正常,问题解决。

目前有许多自适应的网卡,按照原理,应能正确适应速率和双工方式,但实际上,由于品牌的不一致,往往不能正确实现全双工方式。只有手工强制设 定才能解决。因此,我们在设置网络设备参数时,一定要参考服务器或者其他工作站上的网络设备参数,尽量能使各个设备匹配工作。另外大家在使用自适应网卡时 最好设置一个初始的速率,且最好两边速率相同,而不要使用自适应。速率设置的问题常常会导致网络时断时续。










提高Linux操作系统网速方法
作者: 出处:Unix爱好者家园unix-cd.com 更新时间: 2005年10月27日
学校一个电子教室通过ADSL宽带“猫”上网,系统为RedHat&nbsp9.0,但在上网时有些网页打不开,而且网速不快。有同事告 诉笔者,说这跟MTU值有关系,将它修改到适当的值即可。在Windows下可以通过修改注册表来修改MTU值,可在Linux下面又该如何做呢?通过查 阅一些资料,笔者终于解决了这个问题,其实只需要一个简单的命令即可:

#&nbspifconfig&nbspeth0&nbspmtu&nbspnumber

其中“number”为MTU的数值。修改完成后,可以用“ifconfig”命令来查看修改的结果。也可以通过一些网站来测试网速,进一步通过修改MTU值使网速达到最佳。为了不必每次都修改,我们可以在配置文件中修改,如:

#&nbspvi /etc/sysconfig/network-scripts/ifcfg-eth0

MTU=1000

这样Linux的灵活性又一次得到了体现!

小知识:MTU的英文全称为Maximum&nbspTransmission&nbspUnit,意为最大传输单位,也就 是在连接的时候,所传输信息包最多可以有多少字节。MTU决定着信息包的大小,如果信息包太小,同样大小的数据就会分成很多个包传输,计算机不得不频繁地 作出响应;如果信息包太大则会产生错误,导致传输失败。











Linux 网络接口配置文件及相关工具 (v0.1b)

作者:北南南北
来自:LinuxSir.Org
摘要: 本文是关于网络接口有关配置工具的介绍,其中介绍了各大Linux发行版本的网卡的配置文件及相应的特色配置网络工具; 对 ifconfig 和netconfig 进行了解说,对ADSL猫的拔号工具rp-pppoe 进行了详细说明,也对普通猫的拔号工具kppp和wvdial 进行了简单介绍;希望弟兄们指教,谢谢;


目录

1、 关于网络接口及配置工具说明; 2 关于网络硬件设备的驱动; 3、ifconfig 配置网络接口的工具介绍;
3.1 ifconfig 查看网络接口状态; 3.2 ifconfig 配置网络接口; 3.3 如何用ifconfig 来配置虚拟网络接口; 3.4 如何用ifconfig 来激活和终止网络接口的连接; 4、Debian、Slackware、Redhat/Fedora、SuSE等发行版专用网络接口配置工具;
4.1 Debian 网络接口配置文件和专用配置工具; 4.2 Redhat/Fedora 网络接口的配置文件和网络接口专用配置工具;
4.21 Redhat/Fedora 或类似这样的系统,网卡的配置文件; 4.22 Redhat/Fedora 或类似系统, 配置网络的工具介绍 ; 4.23 Redhat/Fedora系统中的netconfig 特别介绍; 4.3 Slackware网卡配置文件和配置工具; 4.4 SuSE或OpenSuSE网卡配置文件和配置工具; 5、关于拔号工具的介绍;
5.1 ADSL pppoe 拔号工具rp-pppoe;
5.11 各大发行版自带的 rp-pppoe 的安装和使用; 5.12 如果是源码包安装,我们要自己来编译安装; 5.2 普通猫的拔号工具介绍; 6、无线网卡; 7、DNS客户端配置文件/etc/resolv.conf; 8、关于本文; 9、更新日志; 10、参考文档; 11、相关文档;



+++++++++++++++++++++++++++++++
正文
+++++++++++++++++++++++++++++++


1、 关于网络接口及配置工具说明;

网络接口(interface)是网络硬件设备在操作系统中的表示方法,比如网卡在Linux操作系统中用 ethX,是由0开始的正整数,比如eth0、eth1...... ethX。而普通猫和ADSL的接口是 pppX,比如ppp0等;

在Linux操作系统中配置网络接口,一般是通过网络配置工具实现的,但最终目的还是通过网络配置工具来达到修改与网络相关的配置文件而起作用 的。由此说来,我们配置网络可以直接修改配置文件。比如网络网络接口(网卡)的IP地址、子掩码、网关,在Slackware 中只需修改一个配置文件就行了 /etc/rc.d/rc.inet1 ,而在 Redhat/Fedora 等或以Redhat/Fedora 为基础的发行版中,一般要涉及到好几个文件,比如包括 /etc/sysconfig/network-scripts/ifcfg-eth0在内等。

了解Linux网络配置文件是极为重要的,我们通过工具修改了什么,是怎么生效的,只有了解网络配置文件才能搞清楚。做个不恰当的比 喻:Linux 系统是一个透明的盒子,至于盒子里装的是什么都是一目了然的。而闭源操作系统,我们没有机会知道这些,更不知道他是怎么实现的。

对于复杂的网络模型,Linux 是有极大的优势,可能在我们看看man 和help,修改修改配置文件,在几分钟就可以搞定。但闭源图形界面的操作系统就没有这么幸运了,反复的点鼠标,点了几十次上百次也解决不了一个问题,这是极为常见的。

由于Linux存在很多的发行和版本,大多发行版本都有自己的专用配置工具。主要是为了方便用户配置网络;但也有通用的配置工具,比如 ifconfig 、ifup、ifdown;


2 关于网络硬件设备的驱动;

我在以前的文档中有写过,网络硬件,比如网卡(包括有线、无线),猫包括普通猫和ADSL猫等,都是需要内核支持的,所以我们首先得知道自己的网络设备是不是已经被硬内核支持了。如果不支持,我们得找驱动(或通过内核编译)来支持它;

请参考:


3、ifconfig 配置网络接口的工具介绍;

ifconfig 是一个用来查看、配置、启用或禁用网络接口的工具,这个工具极为常用的。比如我们可以用这个工具来临时性的配置网卡的IP地址、掩码、广播地址、网关等。 也可以把它写入一个文件中(比如/etc/rc.d/rc.local),这样系统引导后,会读取这个文件,为网卡设置IP地址;不过这样做目前看来没有 太大的必要。主要是各个发行版本都有自己的配置工具,无论如何也能把主机加入到网络中;

下面我们看看ifconfig 用法;


3.1 ifconfig 查看网络接口状态;

ifconfig 如果不接任何参数,就会输出当前网络接口的情况;

[root@localhost ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:C0:9F:94:78:0E
inet addr:192.168.1.88 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::2c0:9fff:fe94:780e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:850 errors:0 dropped:0 overruns:0 frame:0
TX packets:628 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:369135 (360.4 KiB) TX bytes:75945 (74.1 KiB)
Interrupt:10 Base address:0x3000

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:57 errors:0 dropped:0 overruns:0 frame:0
TX packets:57 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:8121 (7.9 KiB) TX bytes:8121 (7.9 KiB)

解说:
eth0 表示第一块网卡, 其中 HWaddr 表示网卡的物理地址,我们可以看到目前这个网卡的物理地址(MAC地址)是 00:C0:9F:94:78:0E ; inet addr 用来表示网卡的IP地址,此网卡的 IP地址是 192.168.1.88,广播地址, Bcast:192.168.1.255,掩码地址Mask:255.255.255.0

lo 是表示主机的回坏地址,这个一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如我们把 HTTPD服务器的指定到回坏地址,在浏览器输入 127.0.0.1 就能看到你所架WEB网站了。但只是您能看得到,局域网的其它主机或用户无从知道;

如果我们想知道主机所有网络接口的情况,请用下面的命令;

[root@localhost ~]# ifconfig -a

如果我们想查看某个端口,比如我们想查看eth0 的状态,就可以用下面的方法;

[root@localhost ~]# ifconfig eth0


3.2 ifconfig 配置网络接口;

ifconfig 可以用来配置网络接口的IP地址、掩码、网关、物理地址等;值得一说的是用ifconfig 为网卡指定IP地址,这只是用来调试网络用的,并不会更改系统关于网卡的配置文件。如果您想把网络接口的IP地址固定下来,目前有三个方法:一是通过各个 发行和版本专用的工具来修改IP地址;二是直接修改网络接口的配置文件;三是修改特定的文件,加入ifconfig 指令来指定网卡的IP地址,比如在redhat或Fedora中,把ifconfig 的语名写入/etc/rc.d/rc.local文件中;

ifconfig 配置网络端口的方法:

ifconfig 工具配置网络接口的方法是通过指令的参数来达到目的的,我们只说最常用的参数;

ifconfig 网络端口 IP地址 hw <HW> MAC地址 netmask 掩码地址 broadcast 广播地址 [up/down]

* 实例一:
比如我们用ifconfig 来调试 eth0网卡的地址

[root@localhost ~]# ifconfig eth0 down
[root@localhost ~]# ifconfig eth0 192.168.1.99 broadcast 192.168.1.255 netmask 255.255.255.0
[root@localhost ~]# ifconfig eth0 up
[root@localhost ~]# ifconfig eth0

eth0 Link encap:Ethernet HWaddr 00:11:00:00:11:11
inet addr:192.168.1.99 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Interrupt:11 Base address:0x3400

注解: 上面的例子我们解说一下;

第一行:ifconfig eth0 down 表示如果eth0是激活的,就把它DOWN掉。此命令等同于 ifdown eth0;
第二行:用ifconfig 来配置 eth0的IP地址、广播地址和网络掩码;
第三行:用ifconfig eth0 up 来激活eth0 ; 此命令等同于 ifup eth0
第四行:用 ifconfig eth0 来查看 eth0的状态;

当然您也可以用直接在指令IP地址、网络掩码、广播地址的同时,激活网卡;要加up参数;比如下面的例子;

[root@localhost ~]# ifconfig eth0 192.168.1.99 broadcast 192.168.1.255 netmask 255.255.255.0 up

* 实例二:在这个例子中,我们要学会设置网络IP地址的同时,学会设置网卡的物理地址(MAC地址);

比如我们设置网卡eth1的IP地址、网络掩码、广播地址,物理地址并且激活它;

[root@localhost ~]# ifconfig eth1 192.168.1.252 hw ether 00:11:00:00:11:11 netmask 255.255.255.0 broadcast 192.168.1.255 up



[root@localhost ~]# ifconfig eth1 hw ether 00:11:00:00:11:22
[root@localhost ~]# ifconfig eth1 192.168.1.252 netmask 255.255.255.0 broadcast 192.168.1.255 up

其中 hw 后面所接的是网络接口类型, ether表示乙太网, 同时也支持 ax25 、ARCnet、netrom等,详情请查看 man ifconfig ;


3.3 如何用ifconfig 来配置虚拟网络接口;

有时我们为了满足不同的需要还需要配置虚拟网络接口,比如我们用不同的IP地址来架运行多个HTTPD服务器,就要用到虚拟地址;这样就省却了同一个IP地址,如果开设两个的HTTPD服务器时,要指定端口号。

虚拟网络接口指的是为一个网络接口指定多个IP地址,虚拟接口是这样的 eth0:0 、 eth0:1、eth0:2 ... .. eth1N。当然您为eth1 指定多个IP地址,也就是 eth1:0、eth1:1、eth1:2 ... ...以此类推;

其实用ifconfig 为一个网卡配置多个IP地址,就用前面我们所说的ifconfig的用法,这个比较简单;看下面的例子;

[root@localhost ~]# ifconfig eth1:0 192.168.1.251 hw ether 00:11:00:00:11:33 netmask 255.255.255.0 broadcast 192.168.1.255 up



[root@localhost ~]# ifconfig eth1 hw ether 00:11:00:00:11:33
[root@localhost ~]# ifconfig eth1 192.168.1.251 netmask 255.255.255.0 broadcast 192.168.1.255 up

注意:指定时,要为每个虚拟网卡指定不同的物理地址;

在 Redhat/Fedora 或与Redhat/Fedora类似的系统,您可以把配置网络IP地址、广播地址、掩码地址、物理地址以及激活网络接口同时放在一个句子中,写入/etc/rc.d/rc.local中。比如下面的例子;

ifconfig eth1:0 192.168.1.250 hw ether 00:11:00:00:11:44 netmask 255.255.255.0 broadcast 192.168.1.255 up
ifconfig eth1:1 192.168.1.249 hw ether 00:11:00:00:11:55 netmask 255.255.255.0 broadcast 192.168.1.255 up

解说:上面是为eth1的网络接口,设置了两个虚拟接口;每个接口都有自己的物理地址、IP地址... ...


3.4 如何用ifconfig 来激活和终止网络接口的连接;

激活和终止网络接口的用 ifconfig 命令,后面接网络接口,然后加上 down或up参数,就可以禁止或激活相应的网络接口了。当然也可以用专用工具ifup和ifdown 工具;

[root@localhost ~]# ifconfig eth0 down
[root@localhost ~]# ifconfig eth0 up
[root@localhost ~]# ifup eth0
[root@localhost ~]# ifdown eth0

对于激活其它类型的网络接口也是如此,比如 ppp0,wlan0等;不过只是对指定IP的网卡有效。


注意:对DHCP自动分配的IP,还得由各个发行版自带的网络工具来激活;当然得安装dhcp客户端;这个您我们应该明白;

比如Redhat/Fedora

[root@localhost ~]# /etc/init.d/network start

Slackware 发行版;

[root@localhost ~]# /etc/rc.d/rc.inet1


4、Debian、Slackware、Redhat/Fedora、SuSE等发行版专用网络接口配置工具;

由于 ifconfig 用起来比较麻烦,而且是用来测试网络之用,但这个工具并不能修改网络接口的相应配置文件。虽然也能通过把ifconfig配置网络接口的语句写入类似 /etc/rc.d/rc.local 文件中,但相对来说还是写入关于网络接口的配置文件中更为安全和可靠;但对于虚拟网络接口写入类似/etc/rc.d/rc.local 中还是可以的;

下面我们介绍一下各个发行版的网络接口配置工具;


4.1 Debian 网络接口配置文件和专用配置工具;

正在增加中;


4.2 Redhat/Fedora 网络接口的配置文件和网络接口专用配置工具;

在Redhat/Fedora 中,与乙太网卡相关的配置文件位于 /etc/sysconfig/network-scripts目录中,比如 ifcfg-eth0、ifcfg-eth1 .... ....


4.21 Redhat/Fedora 或类似这样的系统,网卡的配置文件;

比如在Fedora 5.0中,ifcfg-eth0 ;

如果您用DHCP服务器来自动获取IP的,一般情况下ifcfg-eth0的内容是类似下面这样的;

DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
TYPE=Ethernet

如果您是指定IP的,一般内容是类似下面的;

DEVICE=eth0 注:网络接口
ONBOOT=yes 注:开机引导时激活
BOOTPROTO=static 注:采用静态IP地址;
IPADDR=192.168.1.238 注:IP地址
NETMASK=255.255.255.0 注:网络掩码;
GATEWAY=192.168.1.1 注:网关;

下面的几个选项也可以利用;

HOSTNAME=linxsir03 注:指定主机名;
DOMAIN=localdomain 注:指定域名;
HWADDR=00:00:11:22:00:aa 注:指定网卡硬件地址 (MAC地址), 也可以省略,不过这在这里来更改MAC地址一般是不能生效的。还是通过前面所说的ifconfig的办法来更改吧;


4.22 Redhat/Fedora 或类似系统, 配置网络的工具介绍 ;

在Redhat早期的版本中, 有linuxconf 、redhat-config-network 、netconfig 等工具;

在Redhat/Fedora 最新的版本有 system-config-network-tui (文本模式的) 、system-config-network (图形模式的),netconfig(文本模式的)。

这些工具都会直接修改Linux系统中关于网络接口的配置文件;这是 ifconfig 所不能比的;

其中 redhat-config-network 和system-config-network工具不仅仅是配置网卡的工具,还有配置ISDN和普通猫、ADSL的工具、网络硬件的添加、主机名字的配置、DNS各客户端的配置等。其实是一个工具组的集成;

这些工具比较简单,以root权限运行命令就能调用,比如:

[root@localhost ~]# /usr/sbin/system-config-network
[root@localhost ~]# system-config-network

如果您设置了可执行命令的环境变量,不用加路径就可以运行,但前提是您得安装这个网络管理工具;

不过值得一说的是netconfig 工具是一个在文本模式比较好的工具,推荐大家使用;理由是这个工具在文本模式下,也有一个简单的图形界面;还有命令模式;功能强着呢;

[root@localhost ~]# netconfig -d eth0 注:配置eth0
[root@localhost ~]# netconfig -d eth1 注:配置eth1


4.23 Redhat/Fedora系统中的netconfig 特别介绍;

netconfig这个工具,在Redhat/Fedora 或类似于它们的系统中都是存在的,这个工具比较强大。所以特别介绍一下。但在Slackware中netconfig是TEXT模式下有一个图形模式,但不能象ifconfig一样用命令来操作网卡接口;

netconfig 的用法如下:

[root@localhost ~]# netconfig --help 注:帮助;

--bootproto=(dhcp|bootp|none) Boot protocol to use(
--gateway=STRING Network gateway(指定网关)
--ip=STRING IP address(指定IP地址)
--nameserver=STRING Nameserver(指定DNS客户端)
--netmask=STRING Netmask(指定网络掩码)
--hostname=STRING Hostname( 指定主机名)
--domain=STRING Domain name(指定域名)
-d, --device=STRING Network device (指定网络设备)
--nodns No DNS lookups (没有DNS查询)
--hwaddr=STRING Ethernet hardware address (指定网卡的物理地址)
--description=STRING Description of the device (描述性文字)

Help options: (帮助选项)
-?, --help Show this help message
--usage Display brief usage message

实例一:设置网卡的DHCP模式自动获得IP

[root@localhost ~]# netconfig -d eth0 --bootproto=dhcp

实例一:手动设置网卡的IP等

[root@localhost ~]# netconfig -d eth0 --ip=192.168.1.33 --netmask=255.255.255.0 --gateway=192.168.1.1


4.3 Slackware网卡配置文件和配置工具;

Slackware 有关网卡的配置文件是/etc/rc.d/rc.inet1.conf , 这个文件包括乙太网接口的网卡和无线网卡的配置。Slackware 还是比较纯净的,网络配置也较简单;在Slackware中也有netconfig 配置工具,也是text模式运行的,人机交互界面,这个设置比较简单;

Slackware 用netconfig 配置网卡完成后,其实质是修改了/etc/rc.d/rc.inet1.conf 文件。Slackware是源法原味的Linux系统,他的配置文件比较标准 ,所以我推荐您在生产型的系统,不妨尝试一下Slackware ;

配置好网卡后,我们还得运行下面的命令,才能激活网卡;

[root@localhost ~]# /etc/rc.d/rc.inet1

下面是一个例子,比如此机器有两个网卡eth0和eth1,eth0用DHCP获得IP地址,eth1指定IP地址;

# Config information for eth0:
IPADDR[0]=""
NETMASK[0]=""
USE_DHCP[0]="yes" 注:在这里写上yes,表示用DHCP获得IP;
DHCP_HOSTNAME[0]="linuxsir01" 注:DNS服务器主机名,也可以用IP来指定DNS服务器;

# Config information for eth1: 注:网卡eth1的配置;
IPADDR[1]="192.168.1.33" 注:指定IP地址;
NETMASK[1]="255.255.255.0" 注:指定掩码;
USE_DHCP[1]="no" 注:不用DHCP获得IP;
DHCP_HOSTNAME[1]=""

# Config information for eth2:
IPADDR[2]=""
NETMASK[2]=""
USE_DHCP[2]=""
DHCP_HOSTNAME[2]=""

# Config information for eth3:
IPADDR[3]=""
NETMASK[3]=""
USE_DHCP[3]=""
DHCP_HOSTNAME[3]=""

# Default gateway IP address:
GATEWAY="192.168.1.1" 注:指定网关;


4.4 SuSE或OpenSuSE网卡配置文件和配置工具;

正在更新之中;


5、关于拔号工具的介绍;

有的弟兄可能需要ADSL猫和普通猫的拔号工具;现在我们分别介绍一下;


5.1 ADSL pppoe 拔号工具rp-pppoe;

如果您的ADSL不是路由的,如果是路由的,在路由路就能设置好自动拔号。只要把机器接上就能用了,这个咱们不说了,路由器大家都会用;但如果您的ADSL不支持路由,或您想用您当前所用的主机来做路由器;这就需要一个拔号软件;

目前国内大多城市都用的是pppoe协议 ,所以我们有必要介绍 pppoe 拔号软件,在Linux中,这个软件的名字是 rp-pppoe ;

rp-pppoe 主页;

http://www.roaringpenguin.com/penguin/o ... -pppoe.php


5.11 各大发行版自带的 rp-pppoe 的安装和使用;

rp-pppoe 目前在各大发行版本都是存在的,比如Redhat/Fedora、红旗、Slackware、Debian、SuSE等系统,都是采用这个拔号软件,所以 您大可不必为下载源码编译安装。只需要在各大发行版的安装盘中就可以找得到;请用各大发行版自带的软件包管理工具来安装此软件包;

* 如果您用的是各大发行版提供的rp-pppoe软件包

比如 RPM包的系统是用 rpm -ivh rp-pppoe*.rpm
Slackware 系统是用 installpkg rp-pppoe*.tgz

在Redhat/Fedora 中可以通过图形配置工具来完成,redhat-config-network 命令,调用配置网络,要通过XDSL来添加拔号,比较简单;

所有发行版通用的方法是adsl-setup 命令来配置ADSL;

[root@localhost ~]# adsl-setup 注:配置pppoe拔号,请文档下面,都差不多;
[root@localhost ~]# adsl-start 注:启动拔号;
[root@localhost ~]# adsl-stop 注:断开连接;


5.12 如果是源码包安装,我们要自己来编译安装;

[root@localhost ~]# tar zxvf rp-pppoe-3.8.tar.gz
[root@localhost ~]# cd rp-pppoe-3.8
[root@localhost rp-pppoe-3.8]# ./go

Welcome to the Roaring Penguin PPPoE client setup. First, I will run
some checks on your system to make sure the PPPoE client is installed
properly...

Looks good! Now, please enter some information:

USER NAME

>>> Enter your PPPoE user name (default [email protected]): 在这里添写你的拔号用户名;就是服务商提供的;

>>> Enter the Ethernet interface connected to the DSL modem
For Solaris, this is likely to be something like /dev/hme0.
For Linux, it will be ethn, where 'n' is a number.
(default eth0): eth0 如果是乙太接口的ADSL,就要在这里写上接猫的那个网络接口号。此处是eth0;


Do you want the link to come up on demand, or stay up continuously?
If you want it to come up on demand, enter the idle time in seconds
after which the link should be dropped. If you want the link to
stay up permanently, enter 'no' (two letters, lower-case.)
NOTE: Demand-activated links do not interact well with dynamic IP
addresses. You may have some problems with demand-activated links.
>>> Enter the demand value (default no): 注:默认回车


>>> Enter the DNS information here: 202.96.134.133 注:在这里写上DNS服务器地址;可以和提供商要,也可以用我写的这个;
Please enter the IP address of your ISP's secondary DNS server.
If you just press enter, I will assume there is only one DNS server.
>>> Enter the secondary DNS server address here: 202.96.128.143 这是第二个DNS服务器地址;



>>> Please enter your PPPoE password:在这里输入用户的密码;
>>> Please re-enter your PPPoE password: 确认密码;

The firewall choices are:
0 - NONE: This script will not set any firewall rules. You are responsible
for ensuring the security of your machine. You are STRONGLY
recommended to use some kind of firewall rules.
1 - STANDALONE: Appropriate for a basic stand-alone web-surfing workstation
2 - MASQUERADE: Appropriate for a machine acting as an Internet gateway
for a LAN
>>> Choose a type of firewall (0-2): 2 注:在这里写上2,可以共享上网的;当然还得加一条防火墙规划 ;


Ethernet Interface: eth0
User name: dxxx
Activate-on-demand: No
Primary DNS: 202.96.134.133
Secondary DNS: 202.96.128.143
Firewalling: MASQUERADE

>>> Accept these settings and adjust configuration files (y/n)? y 注:是不是保存配置;

关于共享上网,请参考:《ADSL共享上网的解决办法》


5.2 普通猫的拔号工具介绍;

普通猫分为串口和PCI的,请查看 《关于网络设备概述 》

普通猫的拔号工具主要有kppp和wvdial;在Redhat/Fedora中,用system-config-network 或redhat-config-network 也能设置ppp拔号;

在KDE桌面环境下,大家一般都用kppp拔号工具,点鼠标就可以完成;

wvdial工具是文本的,几乎在各大发行版都有。wvdial的配置文件是/etc/wvdial.conf 。如果您的猫已经驱动好了,运行一下wvdialconf命令就生成了/

你可能感兴趣的:(linux,网络,Debian,服务器,工具,DNS服务器)