linux命令学习之:ifconfig

  ifconfig命令被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。

语法

  ifconfig(参数)

参数说明

add<地址>:设置网络设备IPv6的ip地址;

del<地址>:删除网络设备IPv6的IP地址;

down:关闭指定的网络设备;

<hw<网络设备类型><硬件地址>:设置网络设备的类型与硬件地址;

io_addr:设置网络设备的I/O地址;

irq<irq地址>:设置网络设备的IRQ;

media<网络媒介类型>:设置网络设备的媒介类型;

mem_start<内存地址>:设置网络设备在主内存所占用的起始地址;

metric<数目>:指定在计算数据包的转送次数时,所要加上的数目;

mtu<字节>:设置网络设备的MTU;

netmask<子网掩码>:设置网络设备的子网掩码;

tunnel<地址>:建立IPv4与IPv6之间的隧道通信地址;

up:启动指定的网络设备;

-broadcast<地址>:将要送往指定地址的数据包当成广播数据包来处理;

-pointopoint<地址>:与指定地址的网络设备建立直接连线,此模式具有保密功能;

-promisc:关闭或启动指定网络设备的promiscuous模式;

IP地址:指定网络设备的IP地址;

网络设备:指定网络设备的名称。

常用实例:

1、显示网络设备信息(激活状态的):

[root@CTU1000094956 ~]# ifconfig
eth0: flags=<UP,BROADCAST,RUNNING,MULTICAST> mtu
inet 10.183.118.122 netmask 255.255.254.0 broadcast 10.183.119.255
inet6 fe80::2a6e:d4ff:fe89:41ac prefixlen scopeid 0x20<link>
ether :6e:d4:::ac txqueuelen (Ethernet)
RX packets bytes (3.5 GiB)
RX errors dropped overruns frame
TX packets bytes (30.1 MiB)
TX errors dropped overruns carrier collisions lo: flags=<UP,LOOPBACK,RUNNING> mtu
inet 127.0.0.1 netmask 255.0.0.0
inet6 :: prefixlen scopeid 0x10<host>
loop txqueuelen (Local Loopback)
RX packets bytes (3.8 KiB)
RX errors dropped overruns frame
TX packets bytes (3.8 KiB)
TX errors dropped overruns carrier collisions virbr0: flags=<UP,BROADCAST,MULTICAST> mtu
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether ::::a6:f9 txqueuelen (Ethernet)
RX packets bytes (0.0 B)
RX errors dropped overruns frame
TX packets bytes (0.0 B)
TX errors dropped overruns carrier collisions

说明:

  eth0表示第一块网卡,其中HWaddr表示网卡的物理地址,可以看到目前这个网卡的物理地址(MAC地址)是52:54:00:59:a6:f9。可以看到本实例中MAC地址并没有HWaddr,而是ether,其实ether和HWaddr是一个意思。

  inet用来表示网卡的IP地址,此网卡的IP地址是10.183.118.122,广播地址broadcast:10.183.119.255,掩码地址Mask:255.255.254.0。

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

eth0:网卡的代号,也有lo这个loopback。

· HWaddr/ether:网卡的硬件地址,习惯称为MAC。

· inet addr:IPv4的IP地址,后续的Bcase、Mask分别代表的是Broadcast与Netmask。

· inet6 addr:是IPv6的版本的IP,我们没有使用,所以略过。

· RX:那一行代表的是网络由启动到目前为止的数据包接收情况,packets代表数据包数、errors代表数据包发生错误的数量、dropped代表数据包由于有问题而遭丢弃的数量等。

· TX:与RX相反,为网络由启动到目前为止的传送情况。

· collisions:代表数据包碰撞的情况,如果发生太多次,表示你的网络状况不太好。

· txqueuelen:代表用来传输数据的缓冲区的储存长度。

· RX Bytes、TX Bytes:总传送、接收的字节总量。

· Interrupt、Memory:网卡硬件的数据,IRQ岔断与内存地址。

  通过观察上述的资料,大致上可以了解到你的网络情况,尤其是RX、TX内的error数量,以及是否发生严重的collision情况,都是需要注意的。

2、启动关闭指定网卡:

ifconfig eth0 up
ifconfig eth0 down

  ifconfig eth0 up为启动网卡eth0,ifconfig eth0 down为关闭网卡eth0。ssh登陆linux服务器操作要小心,关闭了就不能开启了,除非你有多网卡。

3、为网卡配置和删除IPv6地址: 

ifconfig eth0 add 33ffe:::::/ #为网卡eth0配置IPv6地址
ifconfig eth0 del 33ffe:::::/ #为网卡eth0删除IPv6地址

4、用ifconfig修改MAC地址: 

ifconfig eth0 hw ether :AA:BB:CC:dd:EE

5、配置IP地址: 

[root@localhost ~]# ifconfig eth0 192.168.2.10
[root@localhost ~]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0
[root@localhost ~]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0 broadcast 192.168.2.255

6、启用和关闭arp协议: 

ifconfig eth0 arp #开启网卡eth0 的arp协议
ifconfig eth0 -arp #关闭网卡eth0 的arp协议

7、设置最大传输单元:

ifconfig eth0 mtu  #设置能通过的最大数据包大小为  bytes
上一篇:Android 三种方式实现自定义圆形进度条ProgressBar


下一篇:关于PHP打开之后找不到数据库问题的记录