ifconfig详解

简介:
ifconfig 是一个用来查看、配置、启用或禁用网络接口的工具,这个工具极为常用的。可以用这个工具来临时性的配置网卡的IP地址、掩码、广播地址、网关等。也可以把它写入一个文件中(比如/etc/rc.d/rc.local),这样系统引导后,会读取这个文件,为网卡设置IP地址 

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:1、eth0:2 ... .. eth1N。当然您为eth1 指定多个IP地址,也就是 eth1:0、eth1:1、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\









本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1536447,如需转载请自行联系原作者
目录
相关文章
|
7月前
ifconfig 配置网络接口
ifconfig 配置网络接口。
54 1
|
Linux
Linux命令(7)之ifconfig
Linux命令(7)之ifconfig
71 3
|
7月前
|
Unix Linux
`ifconfig`命令
`ifconfig`是UNIX和类UNIX系统中用于查看和配置网络接口的命令,提供IP地址、子网掩码等信息。常用参数包括显示所有接口(`-a`)、启用/禁用接口(`up/down`)、设置IP地址和子网掩码。配置在重启后失效,需修改配置文件永久保存。在某些新Linux版本中,可能已被`ip`命令替代。是一款便捷的网络管理工具,更多详情可参考相关手册或文档。
92 4
|
7月前
|
运维 Linux Perl
Linux命令(56)之ifconfig
Linux命令(56)之ifconfig
91 1
|
Docker 容器
“eth0”不存在
“eth0”不存在
161 2
|
监控 Unix Linux
Linux网络常用命令(ifconfig/ethtool/nmon+n)
Linux网络常用命令(ifconfig/ethtool/nmon+n)
161 0
|
Linux 开发工具 索引
centos 7如何将 网卡ens33 修改成 eth0
centos 7如何将 网卡ens33 修改成 eth0
582 0
centos 7如何将 网卡ens33 修改成 eth0
|
移动开发 网络协议 Linux
网络环境查看命令:ifconfig、ifup、ifdown、route、netstat、ss
一、ifconfig ifconfig命令被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。 1. 安装 若系统默认没有ifconfig命令,则使用下面命令进行安装。
1105 0