ifconfig 是一个用来查看、配置、启用或禁用网络接口的工具,这个工具极为经常使用的。能够用这个工具来临时性的配置网卡的IP地址、掩码、广播地址、网关等。也能够把它写入一个文件中(好比/etc/rc.d/rc.local),这样系统引导后,会读取这个文件,为网卡设置IP地址 html
语法:ifconfig [网络设备] [参数]linux
ifconfig [网络设备][down| up| -allmulti |-arp -promisc][add<地址>][del<地址>][<hw<网络设备类型><硬件地址>][io_addr<I/O地址>][irq<IRQ地址>][media<网络媒介类型>][mem_start<内存地址>][metric<数目>][mtu<字节>][netmask<子网掩码>][tunnel<地址>][broadcast<地址>][pointopoint<地址>][IP地址]
参 数:浏览器
[网络设备] 指定网络设备的名称。
del<地址> 删除网络设备IPv6的IP地址。
<hw<网络设备类型><硬件地址> 设置网络设备的类型与硬件地址。
irq<IRQ地址> 设置网络设备的IRQ。
mem_start<内存地址> 设置网络设备在主内存所占用的起始地址。
mtu<字节> 设置网络设备的MTU。
tunnel<地址> 创建IPv4与IPv6之间的隧道通讯地址。
-broadcast<地址> 将要送往指定地址的数据包当成广播数据包来处理。
-promisc 关闭或启动指定网络设备的promiscuous模式。
1.ifconfig 查看网络接口状态
ifconfig 若是不接任何参数,就会输出当前网络接口的状况;
[root@linuxchao ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:03:0D:27:86:41
inet addr:192.168.1.86 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::203:dff:fe27:8641/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:618 errors:0 dropped:0 overruns:0 frame:0
TX packets:676 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:491238 (479.7 KiB) TX bytes:86286 (84.2 KiB)
Interrupt:5 Base address:0x8c00
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:1692 errors:0 dropped:0 overruns:0 frame:0
TX packets:1692 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3174550 (3.0 MiB) TX bytes:3174550 (3.0 MiB)
解说:
eth0 表示第一块网卡, 其中 HWaddr 表示网卡的物理地址,能够看到目前这个网卡的物理地址(MAC地址)是 00:03:0D:27:86:41; inet addr 用来表示网卡的IP地址,此网卡的 IP地址是 192.168.1.86,广播地址, Bcast:192.168.1.255,掩码地址Mask:255.255.255.0
lo 是表示主机的回坏地址,这个通常是用来测试一个网络程序,但又不想让局域网或外网的用户可以查看,只能在此台主机上运行和查看所用的网络接口。好比把 HTTPD服务器的指定到回坏地址,在浏览器输入 127.0.0.1 就能看到你所架WEB网站了。但只是您能看获得,局域网的其它主机或用户无从知道;
若是想知道主机全部网络接口的状况,请用下面的命令;
[root@linuxchao ~]#ifconfig -a
若是想查看某个端口,好比查看eth0 的状态,就能够用下面的方法;
[root@linuxchao ~]#ifconfig eth0
2.ifconfig 配置网络接口
ifconfig 能够用来配置网络接口的IP地址、掩码、网关、物理地址等;值得一说的是用ifconfig 为网卡指定IP地址,这只是用来调试网络用的,并不会更改系统关于网卡的配置文件。若是您想把网络接口的IP地址固定下来,目前有三个方法:一是经过各个发行和版本专用的工具来修改IP地址;二是直接修改网络接口的配置文件;三是修改特定的文件,加入ifconfig 指令来指定网卡的IP地址,好比在redhat或Fedora中,把ifconfig 的语名写入/etc/rc.d/rc.local文件中;
ifconfig 配置网络端口的方法:
ifconfig 工具配置网络接口的方法是经过指令的参数来达到目的的,咱们只说最经常使用的参数;
ifconfig 网络端口 IP地址 hw 类型 MAC地址 netmask 掩码地址 broadcast 广播地址 [up/down]
* 实例一:
好比咱们用ifconfig 来调试 eth0网卡的地址
[root@linuxchao ~]#ifconfig eth0 down
[root@linuxchao ~]#ifconfig eth0 192.168.1.99 broadcast 192.168.1.255 netmask 255.255.255.0
[root@linuxchao ~]#ifconfig eth0 up
[root@linuxchao ~]#ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:03:0D:27:86:41
inet addr:192.168.1.99 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::203:dff:fe27:8641/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:618 errors:0 dropped:0 overruns:0 frame:0
TX packets:676 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:491238 (479.7 KiB) TX bytes:86286 (84.2 KiB)
Interrupt:5 Base address:0x8c00
注解: 上面的例子咱们解说一下;
第一行:ifconfig eth0 down 表示若是eth0是激活的,就把它DOWN掉。此命令等同于 ifdown eth0;
第二行:用ifconfig 来配置 eth0的IP地址、广播地址和网络掩码;
第三行:用ifconfig eth0 up 来激活eth0 ; 此命令等同于 ifup eth0
第四行:用 ifconfig eth0 来查看 eth0的状态;
固然您也能够用直接在指令IP地址、网络掩码、广播地址的同时,激活网卡;要加up参数;好比下面的例子;
[root@linuxchao ~]#ifconfig eth0 192.168.1.99 broadcast 192.168.1.255 netmask 255.255.255.0 up
* 实例二:在这个例子中,咱们要学会设置网络IP地址的同时,学会设置网卡的物理地址(MAC地址);
好比咱们设置网卡eth1的IP地址、网络掩码、广播地址,物理地址而且激活它;
[root@linuxchao ~]#ifconfig eth1 192.168.1.252 hw ether 04:64:03:00:12:51 netmask 255.255.255.0 broadcast 192.168.1.255 up
或
[root@linuxchao ~]#ifconfig eth1 hw ether 04:64:03:00:12:51
[root@linuxchao ~]#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.如何用ifconfig 来配置虚拟网络接口
有时咱们为了知足不一样的须要还须要配置虚拟网络接口,好比咱们用不一样的IP地址来架运行多个HTTPD服务器,就要用到虚拟地址;这样就省却了同一个IP地址,若是开设两个的HTTPD服务器时,要指定端口号。
虚拟网络接口指的是为一个网络接口指定多个IP地址,虚拟接口是这样的 eth0:0 、 eth0:一、eth0:2 ... .. eth1N。固然您为eth1 指定多个IP地址,也就是 eth1:0、eth1:一、eth1:2 ... ...以此类推;
其实用ifconfig 为一个网卡配置多个IP地址,就用前面咱们所说的ifconfig的用法,这个比较简单;看下面的例子;
[root@linuxchao ~]#ifconfig eth1:0 192.168.1.251 hw ether 04:64:03:00:12:51 netmask 255.255.255.0 broadcast 192.168.1.255 up
或
[root@linuxchao ~]#ifconfig eth1 hw ether 04:64:03:00:12:51
[root@linuxchao ~]#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:33: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:33:11:55 netmask 255.255.255.0 broadcast 192.168.1.255 up
解说:上面是为eth1的网络接口,设置了两个虚拟接口;每一个接口都有本身的物理地址、IP地址... ...
4.如何用ifconfig 来激活和终止网络接口的链接
激活和终止网络接口的用 ifconfig 命令,后面接网络接口,而后加上 down或up参数,就能够禁止或激活相应的网络接口了。固然也能够用专用工具ifup和ifdown 工具;
[root@linuxchao ~]#ifconfig eth0 down
[root@linuxchao ~]#ifconfig eth0 up
[root@linuxchao ~]#ifup eth0
[root@linuxchao ~]#ifdown eth0
对于激活其它类型的网络接口也是如此,好比 ppp0,wlan0等;不过只是对指定IP的网卡有效。
注意:对DHCP自动分配的IP,还得由各个发行版自带的网络工具来激活;固然得安装dhcp客户端;这个您咱们应该明白;
好比Redhat/Fedora
[root@linuxchao ~]#/etc/init.d/network start
Slackware 发行版;
[root@linuxchao ~]#/etc/rc.d/rc.inet1\服务器