在 Windows 機器上若是想使用 Linux 環境,最方便的方式莫過於使用虛擬機,最經常使用的軟件各位確定也不陌生,大名鼎鼎的 VMware 。shell
不過這玩意有點稍稍不是那麼智能,每次安裝 Linux 之後,網絡都是不通的,沒有一次是能夠直接裝完就能用的。vim
我單純記錄一下須要修改的內容:網絡
首先是先看下當前的網卡配置,由於我安裝的是 Centos mini 版的系統,支持的命令有限,只能使用 ip addr
的命令:ssh
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 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: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:fd:6b:a2 brd ff:ff:ff:ff:ff:ff inet 192.168.128.100/24 brd 192.168.128.255 scope global noprefixroute ens32 valid_lft forever preferred_lft forever inet6 fe80::e1c0:881a:5ae3:f915/64 scope link noprefixroute valid_lft forever preferred_lft forever
能夠看到兩個網卡配置,一個是 lo 的本地迴環網絡,這個咱們無需關心,還有一個 ens32 的網絡配置,咱們須要改的是這個(我這裏是已經配置好的網卡配置,新裝的機器沒有配置過網絡應該顯示會有不同)。工具
接下來修改 Linux 的網卡配置:oop
由於上面咱們看到的是 ens32 網卡,因此 ens32 的網卡的配置地址爲 /etc/sysconfig/network-scripts/ifcfg-ens32
,有的系統可能不是叫 ens32 ,多是其餘名稱。rest
打開看一下 ens32 的初始配置,以下:code
TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="dhcp" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stable-privacy" NAME="ens32" UUID="6e1b5eaf-21ab-486b-8378-3f0fd92bf969" DEVICE="ens32" ONBOOT="yes"
這裏有兩個配置是須要注意的 BOOTPROTO 和 ONBOOT 。server
BOOTPROTO 是網絡類型,可能的選項爲 static , dhcp 或 bootp 分別對應靜態指定的 ip 地址,經過 dhcp 協議得到的 ip 地址,經過 bootp 協議得到的 ip 地址。ip
這裏修改爲 static ,我固然但願使用的是靜態 IP ,否則每次開機使用的 ssh 連接工具都要換 IP ,太麻煩了。
ONBOOT 須要改爲 yes ,這個意思是是否系統啓動是自動激活網卡,通常設置爲 yes ,不然系統啓動後須要手動輸入命令啓動網卡。
接下來,須要添加下面的信息:
IPADDR=192.168.128.100 GATEWAY=192.168.128.2 NETMASK=255.255.255.0
先說一下, NETMASK 是子網掩碼,這個默認填 255.255.255.0 就能夠了。
GATEWAY 是網關地址,這個須要在 VMware 的 NAT 網絡配置中找,不是能夠隨便填,不然網關不一樣網絡是不會通的。
IPADDR 這個是 IPV4 的地址,也就是咱們最終使用的 IP 地址,可是不能隨便寫,前三段須要和網關維持一致,最後一個隨便寫一個不存在的便可。
接下來重啓一下網絡 systemctl restart network
。
而後嘗試 ping 一下百度:
[root@localhost ~]# ping www.baidu.com ping: www.baidu.com: Name or service not known
這個報錯看起來是域名沒有解析,我換個查號臺的 IP 來 PING 一下試試看:
[root@localhost ~]# ping 114.114.114.114 PING 114.114.114.114 (114.114.114.114) 56(84) bytes of data. 64 bytes from 114.114.114.114: icmp_seq=1 ttl=128 time=55.3 ms 64 bytes from 114.114.114.114: icmp_seq=2 ttl=128 time=80.6 ms 64 bytes from 114.114.114.114: icmp_seq=3 ttl=128 time=70.2 ms
看來網絡如今已經通了,域名解析十有八九是 DNS 的問題,修改下 DNS ,vim /etc/resolv.conf
:
# Generated by NetworkManager nameserver 114.114.114.114 nameserver 202.96.134.133
第一個是查號臺的 DNS ,第二個 202.96.134.133 是電信的 DNS ,由於個人網絡是使用電信的網絡,因此我這裏優先選用了電信的 DNS 。
而後再重啓一下網絡 systemctl restart network
,再次嘗試 PING 百度的域名,我這裏已經 PING 通了,至此, Centos 7 的網絡配置就結束了,以前每次裝虛機,都是在網上處處搜,瞎改配置,最後不知道怎麼網絡就通了,此次特意整理一下,留着之後備查。