CentOS 7配置靜態IP地址


[root@centos1 ~]# ifconfig

-bash: ifconfig: command not found

首先,習慣性的輸入echo $PATH(查看當前PATH環境變量,跟DOS的path命令一樣的功能,注意Linux系統中的命令是區分大小寫的),顯示結果如下:

[root@centos1 ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

從上面顯示結果看,放置系統管理程序的路徑/usr/sbin已存在,就是放外部命令的路徑。直接用ls查看/usr/sbin/目錄,也沒看到ifconfig,怎么回事?

[root@centos1 ~]# ls /usr/sbin/

我還是不死心,再用find命令也沒找到ifconfig?

[root@centos1 ~]# find / -name "ifconfig"

此時心里有底了,應該是用某個命令代替了ifconfig了。上百度一查,果不其然,已經用ip命令代替ifconfig命令了。下面列出ip命令常用參數。

 

ip  [選項]  操作對象{link|addr|route...}

# ip link show                # 顯示網絡接口信息
# ip link set eth0 upi           # 開啟網卡
# ip link set eth0 down          # 關閉網卡
# ip link set eth0 promisc on      # 開啟網卡的混合模式
# ip link set eth0 promisc offi     # 關閉網卡的混個模式
# ip link set eth0 txqueuelen 1200   # 設置網卡隊列長度
# ip link set eth0 mtu 1400        # 設置網卡最大傳輸單元
# ip addr show                # 顯示網卡IP信息
# ip addr add 192.168.0.1/24 dev eth0 # 設置eth0網卡IP地址192.168.0.1
# ip addr del 192.168.0.1/24 dev eth0 # 刪除eth0網卡IP地址

# ip route list                 # 查看路由信息
# ip route add 192.168.4.0/24  via  192.168.0.254 dev eth0 # 設置192.168.4.0網段的網關為192.168.0.254,數據走eth0接口
# ip route add default via  192.168.0.254  dev eth0    # 設置默認網關為192.168.0.254
# ip route del 192.168.4.0/24      # 刪除192.168.4.0網段的網關
# ip route del default          # 刪除默認路由


輸入ip addr命令后,發現enp2s0網卡(這個enp2s0是我這里的網卡)沒有ip地址。

[root@centos1 ~]# ip addr

既然沒有ip地址,那直接去/etc/sysconfig/network-scripts目錄中看一下的網卡ip信息的配置文件名吧。

[root@centos1 ~]# ls /etc/sysconfig/network-scripts/
ifcfg-enp2s0  ifdown-eth   ifdown-post    ifdown-Team      ifup-aliases  ifup-ipv6   ifup-post    ifup-Team      init.ipv6-global
ifcfg-lo      ifdown-ippp  ifdown-ppp     ifdown-TeamPort  ifup-bnep     ifup-isdn   ifup-ppp     ifup-TeamPort  network-functions
ifdown        ifdown-ipv6  ifdown-routes  ifdown-tunnel    ifup-eth      ifup-plip   ifup-routes  ifup-tunnel    network-functions-ipv6
ifdown-bnep   ifdown-isdn  ifdown-sit     ifup             ifup-ippp     ifup-plusb  ifup-sit     ifup-wireless


從結果看,之前保存網卡ip信息的配置文件名也由以前的ifcfg-eth0變成了ifcfg-enp2s0,好吧,既然你給他命這么個名,那我就先用着。先cat一下ifcfg-enp2s0
[root@centos1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp2s0
HWADDR=00:E0:69:01:6A:96
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp2s0
UUID=5b0a7d76-1602-4e19-aee6-29f57618ca01
ONBOOT=no

從上面的配置中有看到雖然BOOTPROTO=dhcp,但是ONBOOT=no,這里用viONBOOT=no改成ONBOOT=yes,然后重啟CentOS。

[root@centos1 ~]# shutdown -r

重啟完成后輸入帳號和密碼進入命令提示操作符繼續用ip addr查看網卡信息。結果如下:
[root@centos1 ~]# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:e0:69:01:6a:96 brd ff:ff:ff:ff:ff:ff
    inet 172.8.1.200/24 brd 172.8.1.255 scope global enp2s0
       valid_lft forever preferred_lft forever
    inet6 fe80::2e0:69ff:fe01:6a96/64 scope link
       valid_lft forever preferred_lft forever

從上面結果看到,通過DHCP分配到的ip地址是172.8.1.200,雖然是測試機,但為了便於今后的遠程連接,我們還是給這台機配置一個固定ip吧。

vi打開ifcfg-enp2s0,輸入以下參數,再用#BOOTPROTO=dhcp注釋。
IPADDR0=172.8.1.211
PREFIX0=24
GATEWAY0=172.8.1.1
DNS1=172.8.1.1

完整參數如下,好了,網絡配通了。明天繼續其它功能測試。
[root@centos1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp2s0
HWADDR=00:E0:69:01:6A:96
TYPE=Ethernet
#BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp2s0
UUID=5b0a7d76-1602-4e19-aee6-29f57618ca01
ONBOOT=yes
IPADDR0=172.8.1.211
PREFIX0=24
GATEWAY0=172.8.1.1
DNS1=172.8.1.1

 

當聯上互聯網后,我們可以用yum install net-tools安裝net-tools組件,將ifconfig命令找回來。有了互聯網一切都好辦了。

[root@centos1 ~]#yum install net-tools


=======================================

linux下啟動和關閉網卡命令

 

 linux命令1: ifup、ifdown:

 

實時地手動修改一些網絡接口參數,可以利用ifconfig來實現,如果是要直接以配置文件,亦即是在 /etc/sysconfig/network-scripts里面的ifcfg-ethx等文件的設置參數來啟動的話,那就得要通過ifdown或ifup來實現了。   

[root@linux ~]# ifup {interface}

[root@linux ~]# ifdown {interface}

[root@linux ~]# ifup eth0

ifup與ifdown真是太簡單了。這兩個程序其實是script而已,它會直接到 /etc/ sysconfig/network-scripts目錄下搜索對應的配置文件,例如ifup eth0,它會找出ifcfg-eth0這個文件的內容,然后加以設置。關於ifcfg-eth0的設置請參考前一章連上Internet的說明。

 

不過,由於這兩個程序主要是搜索設置文件(ifcfg-ethx)來進行啟動與關閉的,所以在使用前請確定ifcfg-ethx是否真的存在於正確的目錄內,否則會啟動失敗。另外,如果以ifconfig eth0來設置或者是修改了網絡接口后,就無法再以ifdown eth0的方式來關閉了。因為ifdown會分析比較目前的網絡參數與ifcfg-eth0是否相符,不符的話,就會放棄這次操作。因此,使用ifconfig修改完畢后,應該要以ifconfig eth0 down才能夠關閉該接口。

 

如何讓LINUX網卡開機自動啟動

 

激活網卡的命令是:ifconfig eth0 up你既然知道了命令,自己做一個腳本,放在啟動項目就可以了。

通過編輯網卡配置文件修改網卡配置文件保存在/etc/sysconfig/network-scripts目錄下面。

第一塊網卡的文件是ifcfg-eth0

第二塊網卡的文件是ifcfg-eth1

以此類推,如果如果你有一塊,那么你就輸入一下命令

[root@linux ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0

打開之后,將ONBOOT=no,改為ONBOOT=yes,(如果沒有,手動添加ONBOOT=yes),:wq保存退出,重啟服務。

echo "ONBOOT=yes" >> /etc/sysconfig/network-script/ifcfg-eth0

在/etc/sysconfig/network-scripts中添加ONBOOT=yes設置網絡開機自動啟動

 

 linux命令2: /etc/init.d/network restart 和 service network restart

 

[root@CentOS2 ~]# /etc/init.d/network restart

正在關閉接口 eth1:                              [確定]

關閉環回接口:                                 [確定]

彈出環回接口:                                 [確定]

彈出界面 eth1: Determining if ip address 10.0.0.168 is already in use for device eth1...

                                          [確定]

[root@CentOS2 ~]# service network restart

正在關閉接口 eth1:                              [確定]

關閉環回接口:                                 [確定]

彈出環回接口:                                 [確定]

彈出界面 eth1: Determining if ip address 10.0.0.168 is already in use for device eth1...

                                          [確定]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM