配置Linux網路
配置Linux的IP有三種方法
- ifconfig
- setup
- 修改網絡卡的配置檔案
說明:本文使用centos7系統,網絡卡命名規則不同。預設網絡卡名ens33
1. ifconfig
命令名稱:ifconfig
基本語法:ifconfig [網絡卡標識] [IP地址]
英文原意:interface configuration
執行許可權:root
功能描述:檢視或臨時配置網絡卡資訊
說明: ifconfig 命令主要是用來檢視網絡卡的配置資訊,因為用它來配置網絡卡的IP地址時,只會臨時生效(Linux伺服器重啟後就會失效)要想使本地網絡卡(ens33)的配置永久生效,需要修改其配置檔案etc/sysconfig/network-scripts/ifcfg-ens33
先用ifconfig命令檢視一下網絡卡的基本資訊。
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.118.130 netmask 255.255.255.0 broadcast 192.168.118.255 inet6 fe80::51c4:92f0:56d5:6020 prefixlen 64 scopeid 0x20<link> ether 00:0c:29:11:11:7d txqueuelen 1000 (Ethernet) RX packets 18755 bytes 1459721 (1.3 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 3519 bytes 896798 (875.7 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Local Loopback) RX packets 1156 bytes 122910 (120.0 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 1156 bytes 122910 (120.0 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255 ether 52:54:00:51:f9:07 txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
說明: eth0 表示第1塊本地網絡卡,它是按照數字順序來命名的。 如果有第2塊本地網絡卡,就叫eth1。 通常,我們主要會檢視本地網絡卡的mac地址(ether 00:0c:29:11:11:7d)和IP地址(inet 192.168.118.130) lo 表示本地迴環網絡卡。 如果你在檢視網絡卡資訊時,沒有本地網絡卡eth33這一項。很可能是因為本地網絡卡預設沒有啟動。 可先修改它的配置檔案/etc/sysconfig/network-scripts/ifcfg-eth33 加上如下程式碼,來啟動Linux主機的本地網絡卡: ONBOOT=yes 儲存退出後,執行下面的命令,重啟網路服務,使網絡卡配置檔案立即生效: service network restart 再來執行ifconfig即可
使用ifconfig臨時設定IP(重啟就會失效)
ifconfig ens33 192.168.118.129
2. setup
setup 命令是 redhat 系列的linux系統(如CentOS)中專有的命令工具
使用 setup 命令來配置網路,會出現一個圖形化的介面,操作起來非常方便。而且它支援的功能更多,除了網路配置外,還支援防火牆配置、系統服務和驗證配置。
也可以使用DHCP(將該項的值設定為 * 即可)來自動獲取IP、子網掩碼和閘道器,前提是你家的路由器已經開啟了DHCP服務(通常,路由器的DHCP服務都是預設開啟的)。setup 網路配置工具設定的IP地址會永久生效。
命令名稱:setup
命令所在路徑:/usr/sbin/setup
執行許可權:root
功能描述:配置網路
基本語法:setup
總結: setup命令工具雖然也有一點侷限性,但它的圖形化設定介面非常方便,而且網路配置也會自動寫入網絡卡配置檔案,進而永久生效。並且,只要你家有外網,你的Linux也能夠連通外網。故推薦使用該方法。
3. 修改網絡卡的配置檔案
- cd /etc/sysconfig/network-scripts
- 找到ifcfg開頭的檔案 ifcfg-“網絡卡名稱” ens33是需要設定的網絡卡,不同機器可能不同名稱
- 按以下配置修改和配置相關資訊
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
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=ens33
UUID=f5957052-8bd1-405d-b08e-3ac166939980
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.2.119
NETMASK=255.255.255.0
GATEWAY=192.168.2.1
DNS1=192.168.2.1
注:這裡的ip、子網掩碼、閘道器按window下的匹配配置
ONBOOT=yes 開機生效
BOOTPROTO=static none=不使用dhcp服務 static=靜態ip dhcp=自動獲取
IPADDR=192.168.2.119 設定IP
NETMASK=255.255.255.0 子網掩碼
GATEWAY=192.168.2.1 閘道器
DNS1=192.168.2.1 DNS
DNS有自己的配置檔案/etc/resolv.conf,在這裡設定DNS,就是把它寫入了DNS的配置檔案/etc/resolv.conf。
- 重啟網路配置,ping百度域名
- 重啟指令:service network restart
- ping百度:ping www.baidu.com
4. 虛擬機器的網路連線模式
就VMware虛擬機器而言,常用的網路連線的模式有三種:
- NAT模式(預設模式)
- 僅主機模式
- 橋接模式
檢視和設定網路連線的模式的方法是:虛擬機器 → 設定 → 網路介面卡,在裝置狀態處,勾選“已連線”和“啟動時連線”;在網路連線處,選擇合適的模式。
這三種網路連線模式有一定的區別,下面逐一說明。
4.1 NAT模式
選擇NAT模式時,虛擬機器的IP應該和真實機中的VMnet8(虛擬網絡卡)的IP(比如:192.168.200.1)同網段,才能保證虛擬機器和真實機的連通。
4.2 僅主機模式
選擇僅主機模式時,虛擬機器的IP應該和真實機中的VMnet1(虛擬網絡卡)的IP(比如:192.168.224.1)同網段,才能保證虛擬機器和真實機的連通。
注意: 在僅主機模式時,就算你家有外網,虛擬機器也只能連通內網,而無法連通外網。
4.3 橋接模式
選擇橋接模式時,虛擬機器的IP應該和真實機中已經連上外網的網絡卡(本地網絡卡或無線網絡卡)的IP(比如:192.168.1.2)同網段,才能保證虛擬機器和真實機的連通。
總結: 如果你家有外網,要想讓虛擬機器中的Linux主機也連通外網,可以選擇“NAT模式”或者“橋接模式”,但不能使用“僅主機模式”。也就是說,“僅主機模式”有一定的侷限性,它只能讓虛擬機器連通區域網,而其他兩種模式,只要網路配置正確,則沒有侷限性。