一、使用命令臨時添加ip
1)查看一下eth0配置:
ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:0C:D1:64
inet addr:192.168.36.189 Bcast:192.168.36.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe0c:d164/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:27537 errors:0 dropped:0 overruns:0 frame:0
TX packets:15994 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:28935981 (27.5 MiB) TX bytes:1430497 (1.3 MiB)
Interrupt:19 Base address:0x2024
2)添加子網卡
ifconfig eth0:0 172.16.1.100 netmask 255.255.255.255 broadcast 172.16.1.255 up
ifconfig eth0:1 192.168.36.110 netmask 255.255.255.255 broadcast 192.168.36.255 up
查看:ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:0C:D1:64
inet addr:192.168.36.189 Bcast:192.168.36.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe0c:d164/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:28286 errors:0 dropped:0 overruns:0 frame:0
TX packets:16398 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:28998261 (27.6 MiB) TX bytes:1493145 (1.4 MiB)
Interrupt:19 Base address:0x2024
eth0:0 Link encap:Ethernet HWaddr 00:0C:29:0C:D1:64
inet addr:172.16.1.100 Bcast:172.16.1.255 Mask:255.255.255.255
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:19 Base address:0x2024
eth0:1 Link encap:Ethernet HWaddr 00:0C:29:0C:D1:64
inet addr:192.168.36.110 Bcast:192.168.36.255 Mask:255.255.255.255
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:19 Base address:0x2024
說明與注意:
1: 必須使用up 來啟動,讓這個IP生效 .
2:這種方法只是臨時的,如果reboot的話,則會全部消失
3:在設置ip別名時,如果增加的是和局域網同一網段的ip(如192.168.36.110),那么除了本機外局域網內其他機器都可以ping通這個ip。如果增加的是其他網段的ip,那么就只有本機可以ping通而已(不過可以通過設置多網段ip,也可以訪問),后者主要用于本機測試需要。
若配置不同網段,參考:在Linux下配置多個網段ip
如果不再需要這個IP地址時,使用ifconfig ${dev_name} down就可以使用新綁定上的IP地址下線了。現在把剛才綁定的eth0:1下線:
[root@localhost]# ifconfig eth0:1 down
二、上述方法添加的IP,如果機器重啟,配置就會丟失,我們可以通過如下2中辦法保留網卡的ip。
1)將增加ip的命令填寫到/etc/rc.local文件中
即將所有如這樣ifconfig eth0:0 192.168.36.110 netmask 255.255.255.0 up的命令一行行全部填寫到rc.local文件中去,rc.local文件是作用于linux開機自動執行命令,詳細用法g或b一下,這里不詳細說明。這個方法最方便,但不太可靠,有時會失靈。
2)手動編寫ip的網卡配置文件
所有網卡的配置文件都保存在/etc/sysconfig/network-scripts目錄中,一個網卡對應一個配置文件,如:
[root@slave-b opt]# ls /etc/sysconfig/network-scripts/
ifcfg-eth0 ifdown-bnep ifdown-ipv6 ifdown-ppp ifdown-tunnel ifup-bnep ifup-ipv6 ifup-plusb ifup-routes ifup-wireless network-functions
ifcfg-lo ifdown-eth ifdown-isdn ifdown-routes ifup ifup-eth ifup-isdn ifup-post ifup-sit init.ipv6-global network-functions-ipv6
ifdown ifdown-ippp ifdown-post ifdown-sit ifup-aliases ifup-ippp ifup-plip ifup-ppp ifup-tunnel net.hotplug
文件ifcfg-eth0就是本機網卡的配置文件,我們可以通過仿照這個文件的格式來編寫其他ip的配置文件。
#vi ifcfg-eth0
打開網卡的配置文件,將里面所有字段復制一下
#vi ifcfg-eth0:0
創建eth0:0的配置文件,并將剛才復制的字段粘貼到這個配置文件,按照下文的介紹修改部分信息,修改完成后保存退出
以下是網卡配置文件的部分信息說明,其他類似信息默認即可:
##############################################################################
DEVICE=eth0:0 //虛擬網絡接口,隨意
ONBOOT=yes //系統啟動時激活
BOOTPROTO=static //使用靜態ip地址
IPADDR=192.168.36.100 //該虛擬網絡接口的ip別名,隨意
NETMASK=255.255.255.0 //子網掩碼,對應ip別名
GATEWAY=192.168.36.1 //網關,對應ip別名
HWADDR=00:10:5A:5E:B1:E4 //網卡MAC地址,無需更改
USERCTL=no //是否給予非root用戶設備管理權限
##############################################################################
配置完成重啟網卡即可:
service network restart