linux 容器 LXC 第7章 之網路設定

2021-08-22 04:26:39 字數 2078 閱讀 9804

按照部落格一所述,應該能夠建立lxc虛擬機器並執行虛擬機器,如果是本地的話,應該能夠進入虛擬機器操作了,會發現虛擬機器只提供了最原始和簡單的一些程式,如果使用template方式,甚至連vim,gcc,python等都沒有安裝,更別說myql了。安裝包如此之多,不能都使用原始碼方式安裝,使用yum 和rpm需要聯網。所以這節就講講聯網的設定。

由於使用了vmware下centos虛擬機器中建lxc,所以第一步是讓centos能夠連上internet,其次是讓lxc連線上網,為了不弄混淆,win7的vmware中安裝的成為centos,centos中安裝的lxc成為cn,cn1…之所以使用vmware方式主要是因為其具有快照功能,這一功能可以讓我迅速的回到之前儲存的乙個狀態。這一功能在嘗試性探索中非常有用!

首先在centos中使用ifconfig檢視是否virbr0這個網路裝置,安裝libvirt包,啟動該服務就會有這個網路裝置,這個網路裝置用於主機(安裝vmware的機器)和centos進行網路通訊的,網路的通訊方式預設為nat。在/etc/sysconfig/network-scripts/ifcfg-et0中將onboot,新增進入,這樣每次啟動centos虛擬機器時,該網路就會被啟動。

onboot="yes"

具體我的該檔案設定為:

由於使用的是虛擬機器,虛擬機器centos和win7橋接:

在centos中檢視網路裝置:

lxc的配置指令碼:該指令碼顯示其連線的網路裝置是virbr0,而自己的裝置型別是veth,就是virtual ethernet的簡稱。這就是說,該虛擬網絡卡連線到virbr0。

既然知道了lxc的網絡卡連線方式,那麼更進一步,看看lxc虛擬機器的資訊。這裡看到奇怪的vethlmnxk5和veth2ro1dr,這是在上面沒有提及的。這也是兩塊網絡卡,不過也是虛擬的橋接裝置,就是使用brctl建立出來的。

通過上面兩個,知道兩點第一點:lxc通過virbr0連線,第二點:vethlmnxk5和veth2ro1dr為lxc虛擬機器的虛擬網絡卡,那他們之間是如何連線的呢,brctl可以看出。

從這裡可以看出,virbr0是由多個lxc虛擬機器共享的,當然,存在另乙個問題,就是如果還有乙個virbr0,它們連線的方式是bridge方式。

再來看看vethlmnxk5的資訊。顯示已經接收到了資料報資訊。其實這是lxc已經可以連網了,所以可以看見有rx。

virbr0 是一種虛擬網路介面,這是由於安裝和啟用了 libvirt 服務後生成的,libvirt 在伺服器(host)上生成乙個 virtual network switch (virbr0),host 上所有的虛擬機器(guests)通過這個 virbr0 連起來。預設情況下 virbr0 使用的是 nat 模式(採用 ip masquerade),所以這種情況下 guest 通過 host 才能訪問外部。

至此,網路設定完畢。lxc可以連線外網了。

linux 容器 LXC 第2章 chroot

在linux 系統上啟動乙個daemon 必須用root 使用者來啟動,比如乙個web 伺服器 nginx apapce 80埠 是在作業系統的介面 1 1024 只有root 有這個許可權來啟動這類介面 用root 戶啟動daemon 的程式也被認為是乙個自然的事情。隨著安全的攻擊越來越嚴重,如果...

linux 容器 LXC 第2章 chroot

在linux 系統上啟動乙個daemon 必須用root 使用者來啟動,比如乙個web 伺服器 nginx apapce 80埠 是在作業系統的介面 1 1024 只有root 有這個許可權來啟動這類介面 用root 戶啟動daemon 的程式也被認為是乙個自然的事情。隨著安全的攻擊越來越嚴重,如果...

第7章 Linux檔案與目錄管理

代表此層目錄 代表上一層目錄 代表 目前使用者身份 所在的主資料夾 account 代表account這個使用者所在的資料夾 account是個賬號名稱 cd 切換目錄 pwd 顯示當前目錄 mkdir 新建乙個新的目錄 rmdir 刪除乙個空的目錄 執行檔案路徑的變數 path ls 檢視檔案與目...