Linux 服务器网卡 IP 配置

 网卡是 Linux 服务器最重要的设备。据统计,Linux 网络故障有 35% 在物理层、25% 在数据链路层、10% 在网络层、10% 在传输层、10% 在对话层、7% 在表示层、3% 在应用层。由此可以看出,网络故障通常发生在网络七层模型的下三层,即物理层、链路层和网络层。对应于实际网络也就是使用的网卡、网络线缆、交换机等设备故障。


    在 Linux 网络设备在配置时被赋予别名,该别名由一个描述性的缩略词和一个编号组成。某种类型的第一个设备的编号为 0,其他设备依次被编号为 1、2、3 等。但是网卡并不是作为裸设备出现在/dev目录下,而是存在内存中。eth0、eth1是以太网卡接口。它们用于大多数的以太网卡,包括许多并行端口以太网卡。本文主要讨论这类网卡。 为 Linux 以太网卡设定 IP 地址的方式非常灵活,你可以选择适合你工作情况的方法:

    1. 使用ifconfig命令

    ifconfig 命令是常用的 Linux 网络命令之一,主要用途是设定、修改网卡的 IP 地址。

    修改网卡 IP 地址命令为:

    # ifconfig eth0  192.168.149.129 netmask 255.255.255.0  

    默认情况下,ifconfig 显示活动的网络设备。给这个命令添加一个 -a 开关就能看到所有设备。但是 ifconfig 命令设置网络设备的 IP 地址系统重新启动后设置会自动失效。所以它主要用于网卡状态调试。假设您要建立一个临时的网络配置以供测试。您可以使用发行版本中的工具来编辑配置,但是需要注意在完成测试之后,将所有设置恢复回去。通过使用 ifconfig ,我们无需影响已保存的设置,就能够快速地配置网卡。

    查看指定网卡的接口状态:

         #ifconfig eth0   
          eth0      Link encap:Ethernet  HWaddr 00:0C:29:F6:9B:27
          inet addr:192.168.149.129  Bcast:192.168.149.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fef6:9b27/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:120 errors:0 dropped:0 overruns:0 frame:0
          TX packets:116 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:12600 (12.3 KiB)  TX bytes:12705 (12.4 KiB)
          Interrupt:10 Base address:0x1424

    可以看到修改后 的ip地址生效。小贴式:ifconfig修改的ip地址,在服务器重新启动后会失效。

    2. 使用ip命令

    ip命令是iproute2软件包里面的一个强大的网络配置工具,它能够替代一些传统的网络管理工具。例如:ifconfig、route等。 现在,绝大多数 Linux 发行版和绝大多数 UNIX都使用古老的arp, ifconfig和route命令。虽然这些工具能够工作,但它们在Linux2.2和更高版本的内核上显得有一些落伍。使用iproute2前你应该确 认已经安装了这个工具。这个包的名字在RedHat Linux 9.0叫作“iproute2”,也可以在:ftp://ftp.inr.ac.ru/ip-routing/ 下载源代码安装。如果希望在以太网接口eth0上增加一个地址10.0.0.1,掩码长度为24位,标准广播地址,标签为eth0:Alias: 
#ip addr add 10.0.0.1/24 brd + dev eth0 label eth0:Alias

    3. 使用 netconfig命令

    netconfig命令可以设置网络设备的ip地址,netconfig命令可以永久保存设置。
使用方法是:“netconfig ethX”。使用命令“netconfig eth0”后会在命令行下弹出一个对话框进行确认,选择“是”,如图1 。
 

图1 是否进行联网配置对话框

    这时即可进行设定见图2
图2 netconfig配置界面

    设定结束后用“tab”键选择“OK”即可保存设置并且退出。然后使用命令激活即可生效:
    #service network restart
    或者使用等价命令组(先禁用后启用):
    #ifdown eht0 
    #ifup eth0

     小贴士:netconfig命令修改的ip地址,在服务器重新启动后不会失效。

    4. 使用neat命令

    使用neat命令需要配置好X window系统,在命令行下运行“neat”命令后添加IP地址和其他相关参数后保存设置,从新启动网络和网络服务或计算机,见图3。
 
  

图3 图形界面添加IP地址

    另外neat命令还有一个同价命令:“redhat-config-network”,二者完全相同。Neat和redhat-config-config命令可以永久保存设置。

    5. 修改TCP/IP网络配置文件

    除非另行指定,Red Hat Linux 系统中大多数配置文件都在 /etc 目录中。网卡相关的TCP/IP网络配置文件是:/etc/sysconfig/network-scripts/ifcfg-ethx。其中x从0开 始,第一个以太网配置文件即:/etc/sysconfig/network-scripts/ifcfg-eth0。使用vi编辑器修改这个文件,也可 以修改网卡IP地址。比如文件:ifcfg-eth0  代表是以太网实际网卡0的配置文件,比如文件:ifcfg-eth0:1  代表是以太网实际网卡0的配置文件。

    #vi /etc/sysconfig/network-scripts/ifcfg-eth0 
    DEVICE=eth0        #设定网卡的名称,要跟文件名称对应 #
    ONBOOT=yes        #是否在开机的的时候启动网卡# 
    BOOTPROTO=static      #启动的时候的 IP 取得的协议,这里是固定的, 
               如果是动态主机的话,要改成 dhcp 才行# 
    IPADDR=192.168.1.2     #IP 地址#
    NETMASK=255.255.255.0   #子网掩吗# 
    NETWORK=192.168.1.0    #该网段的第一个 IP# 
    BROADCAST=192.168.1.255  #最后一个同网段的广播地址# 
    GATEWAY=192.168.1.2    #网关地址# 
    #GATEWAYDEV=eth0      

    存盘后使用命令:“service network restart “激活即可生效。这个方法同样可以永久保存设置。

    6. 在一个网卡上配置多个ip地址

    有时候想要在网卡上配置多个ip地址,同样可以使用ifconfig命令完成:
    ifconfig eth0:1 192.168.149.122 netmask 255.255.255.0
    ifconfig eth0:2 192.168.149.123 netmask 255.255.255.0
    以上是对网卡eth0修改了2个IP地址的方法,重新使用ipconfig命令查看,可以看到一个网卡上已经配置多个ip地址。如图4。
 

图4在一个网卡上配置多个ip地址


    7. 无线网卡在Linux下的ip配置全攻略

    随着Linux网络技术的快速增长,硬件厂商大大加速对硬件产品对Linux的技术支持。使得Linux 支持的无线网卡的数量在过去的一两年里增长显著。对于有些设备,配置无线连接非常简单:只要在您使用的 Linux 发行版本,插入无线网卡,在设置过程中单击鼠标,并输入正确的联网参数就可以了。设置无线网络相关步骤如下:

    (1)用“iwconfig”命令来显示无线网卡(eth0、eth1)的信息。在以下的步骤中,用ethX表示无线网卡的名称。
    (2)设置无线网卡的操作模式为Managed:
    #iwconfig ethX mode Managed 
    (3)如果采用了WEP加密,需要设置WEP密码:
    #iwconfig ethX key password XXXXXX
    对应40位和128位加密,password分别为6位和10位的十六进制数字。
    (4)设置SSID,其中ESSID为无线接入(Access Point)的SSID。
     # iwconfig ethX essid ESSID 
    (5)启动无线网卡:
    #ifconfig ethX up


总结:

    可以看到Linux 下网卡的ip设置的方法比较灵活,不同的命令可以完成相同的任务。注意由于ip地址是Linux服务器的关键参数所以完成以上操作要有管理员权限。

你可能感兴趣的:(linux)