网络配置ifconfig(应用实战9)
简介:
ifconfig 是一个用来查看、配置、启用或禁用网络接口的工具,这个工具极为常用的。可以用这个工具来临时性的配置网卡的IP地址、掩码、广播地址、网关等。
但是,用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改/etc/sysconfig/network-scripts/ifcfg-eth0(网卡配置文件)。
功能:查看、配置、启用或禁用网络接口的工具
语法:ifconfig [网络设备] [参数]
参数:
up 启动指定网络设备/网卡。
down 关闭指定网络设备/网卡
arp 设置指定网卡是否支持ARP协议。
-promisc 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包
-allmulti 设置是否支持多播模式,如果选择此参数,网卡将接收网络中所有的多播数据包
-a 显示全部接口信息
-s 显示摘要信息(类似于 netstat -i)
add 给指定网卡配置IPv6地址
del 删除指定网卡的IPv6地址
<硬件地址> 配置网卡最大的传输单元
mtu<字节数> 设置网卡的最大传输单元(bytes)
netmask<子网掩码> 设置网卡的子网掩码。
tunel 建立隧道
dstaddr 设定一个远端地址,建立点对点通信
-broadcast<地址> 为指定网卡设置广播协议
-pointtopoint<地址> 为网卡设置点对点通讯协议
multicast 为网卡设置组播标志
address 为网卡设置IPv4地址
txqueuelen<长度> 为网卡设置传输列队的长度
范例:
#1显示激活状态的网络设备信息
[root@localhost ~]# ifconfig
eth0 Link encap:Ethernet HWaddr00:1B:24:30:CB:5E
inet addr:192.168.1.5 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:92 errors:0 dropped:0 overruns:0 frame:0
TX packets:113 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:15381 (15.0 KiB) TX bytes:14021 (13.6 KiB)
Interrupt:201
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1746 errors:0 dropped:0 overruns:0 frame:0
TX packets:1746 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2640466 (2.5 MiB) TXbytes:2640466 (2.5 MiB)
第一行:连接类型:Ethernet(以太网)HWaddr(硬件mac地址)
第二行:网卡的IP地址、子网、掩码
第三行:UP(代表网卡开启状态)RUNNING(代表网卡的网线被接上)MULTICAST(支持组播)MTU:1500(最大传输单元):1500字节
第四、五行:接收、发送数据包情况统计
第七行:接收、发送数据字节数统计信息。
eth0 表示第一块网卡,lo 是表示主机的回坏地址。
#2显示所有的网络设备信息
[root@localhost ~]# ifconfig –a
#3启动关闭指定网卡
[root@localhost ~]# ifconfig eth0 down
[root@localhost ~]# ifconfig eth0 up
#4用ifconfig修改MAC地址
[root@localhost ~]# ifconfig eth0 hw ether00:AA:BB:CC:DD:EE
#5配置IP地址
[root@localhost ~]# ifconfig eth0 192.168.1.5
[root@localhost ~]# ifconfig eth0 192.168.1.5netmask 255.255.255.0
[root@localhost ~]# ifconfig eth0 192.168.1.5netmask 255.255.255.0 broadcast 192.168.120.255
//再在eth0上在配置两个192.168.1.6/24,192.168.1.8/24 的IP地址
[root@localhost ~]# ifconfig eth0:0192.168.1.6 netmask 255.255.255.0
[root@localhost ~]# ifconfig eth0:1 192.168.1.8netmask 255.255.255.0
#6启用和关闭ARP协议
[root@localhost ~]# ifconfig eth0 arp //开启网卡eth0 的arp协议
#7设置最大传输单元
[root@localhost ~]# ifconfig eth0 mtu 1500
网络初始化配置文件:
因为用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在,所以要想将上述的配置信息永远的保存,那就要修改网卡的配置文件了。
一般主机的网络初始化会涉及到以下几个文件:
/etc/sysconfig/network-scripts/ifcfg-eth0 网卡的IP地址配置文件
/etc/sysconfig/network 网关配置文件
/etc/resolv.conf 网卡的DNS的配置文件
/etc/hosts 域名解析地址的配置文件
修改上述配置文件后,重新启动网络配置:
[root@localhost ~]##service network restart
或
[root@localhost ~]# /etc/init.d/network restart
⑴修改对应网卡的IP地址的配置文件,例如我的网卡配置文件如下:
[root@localhost ~]# vi/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
TYPE=Ethernet
BROADCAST=192.168.1.255
HWADDR=00:1B:24:30:CB:5E
IPADDR=192.168.1.5
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes
字段说明:
DEVICE #描述网卡对应的设备别名,例如ifcfg-eth0的文件中它为eth0
BOOTPROTO #设置网卡获得ip地址的方式,可能的选项为static,dhcp或bootp,分别对应静态指定的 ip地址,通过dhcp协议获得的ip地址,通过bootp协议获得的ip地址。
BROADCAST #对应的子网广播地址
HWADDR #对应的网卡物理地
NETMASK #网卡对应的网络掩码
NETWORK #网卡对应的网络地址
ONBOOT #系统启动时是否设置此网络接口,设置为yes时,系统启动时激活此设备
⑵修改对应网卡的网关的配置文件,例如我的网关配置文件如下:
[root@localhost ~]# vi/etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=lamp01
GATEWAY=192.168.1.1
字段说明:
NETWORKING #这里为yes表示系统是使用网络的,一般设置为yes。如果设为no,则不能使用网络,而且很多系统服务程序将无法启动。
HOSTNAME #设置本机的主机名,这里设置的主机名要保持与/etc/hosts中设置的主机名相对应。
GATEWAY #设置本机连接的网关的IP地址。
⑶修改对应网卡的DNS的配置文件,例如我的DNS的配置文件如下:
[root@localhost~]# vi /etc/resolv.conf
nameserver192.168.1.7
nameserver221.12.1.227
searchloadtty.com loadpty.com
字段说明
nameserver #定义DNS服务器的IP地址
domain #定义本地域名
search #定义域名的搜索列表
sortlist #对返回的域名进行排序
可以有很多行的nameserver,在查询时就按nameserver在本文件中的次序进行,且只有当第一个nameserver沒有反应时才查询下面的nameserver。
⑷修改对应网卡的域名解析地址的配置文件,例如我的域名解析地址的配置文件如下:
[root@localhost~]# vi /etc/hosts
#Do not remove the following line, or various programs
#that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
192.168.1.5lamp01
192.168.1.8lamp02
192.168.1.20wamp02
192.168.1.19wamp01
::1localhost6.localdomain6 localhost6
/etc/hosts配置文件格式:每行由三部分组成,每个部分由空格隔开。
第一部分:网络IP地址;
第二部分:主机名或域名;
第三部分:主机名别名;
当然每行也可以是两部分,即主机IP地址和主机名。
主机名(hostname)和域名(domain)的区别:
主机名:通常在局域网内使用,通过/etc/hosts文件,主机名就被解析到对应IP;
域名:通常在INTERNET上使用,所以,如果本机不想使用internet上的域名解析,这时就可以在hosts文件中,加入自己的域名解析。
注意:127.0.0.1 localhost.localdomain localhost 这一条建议不要修改,因为很多应用程序会用到这个。比如sendmail,修改之后这些程序可能就无法正常运行。
/etc/hosts配置文件可以帮助日常解决一些问题
通常,Linux系统在向DNS服务器发出域名解析请求之前会查询/etc/hosts文件,如果里面有相应的记录,就会使用hosts里面的记录。
①双机互联
当两台主机只是双机互连时,这时两台主机都需要设置自己的ip,同时在对方的/etc/hosts文件里加入自己的ip和主机名。
②远程登录linux主机过慢问题
有时候客户端想要远程登录一台linux主机,但每次登录输入密码后都会等很长一段时间才会进入,这是因为linux主机在返回信息时需要解析IP,如果在linux主机的hosts文件事先就加入客户端的IP地址,这时再从客户端远程登录linux就会很快。