標籤:
今天在一台PC上安裝了CentOS 7,當時選擇了最小安裝模式,安裝完成後馬上用ifconfig查看原生ip地址(區域網路已經有DHCP),發現報錯,提示ifconfig命令沒找到。
[[email protected] ~]# ifconfig
-bash: ifconfig: command not found
首先,習慣性的輸入echo $PATH(查看當前PATH環境變數,跟DOS的path命令一樣的功能,注意Linux系統中的命令是區分大小寫),顯示結果如下:
[[email protected] ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
從上面顯示結果看,放置系統管理程式的路徑/usr/sbin已存在,就是放外部命令的路徑。直接用ls 查看/usr/sbin/目錄,也沒看到ifconfig,怎麼回事?
[[email protected] ~]# ls /usr/sbin/
我還是不死心,再用find命令也沒找到ifconfig?
[[email protected] ~]# find / -name "ifconfig"
此時心裡有底了,應該是用某個命令代替了ifconfig了。上百度一查,果不其然,已經用ip命令代替ifconfig命令了。下面列出ip命令常用參數。
複製代碼代碼如下:
ip [選項] 操作對象{link|addr|route...}</p><p># 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地址</p><p># 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地址。
[[email protected] ~]# ip addr
既然沒有ip地址,那直接去/etc/sysconfig/network-scripts目錄中看一下的網卡ip資訊的設定檔名吧。
[[email protected] ~]# 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
[[email protected] ~]#
從結果看,之前儲存網卡ip資訊的設定檔名也由以前的ifcfg-eth0變成了ifcfg-enp2s0,好吧,既然你給他命這麼個名,那我就先用著。先cat一下ifcfg-enp2s0
[[email protected] ~]# 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,這裡用vi將ONBOOT=no改成ONBOOT=yes,然後重啟CentOS。
[[email protected] ~]# shutdown -r
重啟完成後輸入帳號和密碼進入命令提示操作符繼續用ip addr查看網卡資訊。結果如下:
[[email protected] ~]# 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
[[email protected] ~]#
從上面結果看到,通過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
完整參數如下,好了,網路配通了。明天繼續其它功能測試。
[[email protected] ~]# 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
[[email protected] ~]#
CentOS 7 網路設定方法