【Linux】(小白向)詳解VirtualBox網路配置-配置Linux網路

来源:https://www.cnblogs.com/sugerqube/archive/2023/05/18/17410004.html
-Advertisement-
Play Games

本文時間 2023-05-18 作者:sugerqube漆瓷 本文面向新手,重在理解會捨棄不少精密的理論,還請大佬們見諒。 本文目標:成功使用ssh工具登錄linux,同時linux能連接外網。 網路基礎 關於區域網 ==一切網路的目的:為了鏈接兩台電腦== 知識點1:每台物理機應該有一個ip地址 ...


本文時間 2023-05-18
作者:sugerqube漆瓷

本文面向新手,重在理解會捨棄不少精密的理論,還請大佬們見諒。
本文目標:成功使用ssh工具登錄linux,同時linux能連接外網。

網路基礎

關於區域網

一切網路的目的:為了鏈接兩台電腦

知識點1:每台物理機應該有一個ip地址

windows用戶可以在win+R輸入cmd打開命令行使用ipconfig查看自己的ip
IPv4 就是我這臺電腦的ip地址192.168.1.117。
註:192.XXX一般是區域網
image


知識點2:存在物理鏈接的兩臺電腦可以互相訪問

image

一般用在cmd視窗用ping檢查連通性。

image

ctrl+c結束ping
註:以上即以下情況介預設防火牆開放

知識點2.1:防火牆可以添加規則限制上述的訪問。
知識點2.2:路由器一般兼具交換機的功能。


知識點3:在到達最後一個“設備”前經過的節點,可以被等效忽略

知識點3.1:網關地址為直接連接的ip地址

image

舉例一個常見網路架構

image

以我的A為例,電腦的網線連接著路由器
路由器ip為192.168.1.1
所以網關地址為:192.168.1.1

同時作為同區域網下的B可以直接被我訪問。

現在我想要訪問sugerqube.org伺服器的服務
我的網路經過了路由器的網關
路由器再經過112.X的(光纖)/(交換機),然後就可以等效為下圖。

image

顯然我可以訪問通區域網下的sugerqube。

再次強調,上述只是一種理解方式,真實的環境還要涉及防火牆和協議

簡述VBox的網路(橋接模式)

有上述基礎 一個拓撲圖就可以理解橋接模式是什麼:
image
這種模式勝在方便,但是有個缺點,他的ip是由真實路由器分配的,不方便我們ssh鏈接。
當然可以像下文那樣改配置文件固定ip,不過存在隱藏問題
如果是筆記本接校園網,你的網關將是變動的,不能定死
筆者更喜歡下文的host-only模式不繼續深入討論橋接模式。

配置VBox的網路(HostOnly)

VBox的配置

有了上述基礎,我們就可以很好的理解與配置VBox的網路了。

image

image


IPv4的地址就相當於上述路由器的地址,是等一下我們linux里要配的網關地址。
DHCP伺服器,相當於平時路由器給我們分配ip地址,192.168.1.X的由來。

image


可以看到我們掛在在這個“路由器”下的虛擬機的ip地址範圍應該在(101-254)
伺服器占用100地址,相當於上面的sugerqube提供服務的機子。

把虛擬機連上“VBox路由器”
image

啟動配置Linux網路。

image


開機後使用ip addr查看ip,發現之前的100已經為我們分配了ip:192.168.137.120
但是此時的故名思議是host-only,我們的實機沒有什麼關係。
這裡展示一個拓撲圖:
image
所以很明顯,現在我們的linux是不聯網的。
想要聯網,需要把VBox插到我們真機的路由器上,當然不是真的插網線 :)

真機的配置

從控制面板-》網路和Internet-》網路鏈接,藍色的理解為“VBox路由器”,紅色的理解為真機“路由器”
image
右鍵乙太網image屬性


image
將他共用給VBox。

!!!!!!!!!
在電腦重啟後共用極有可能失效,需要重新共用(VBox的bug)。
!!!!!!!!!

新的拓撲結構:
image
這時候就可以用我們的真機訪問虛擬機了。

image


但是此時Linux還不能訪問互聯網,因為現在的Linux的網路配置是按照之前的拓撲圖生成的。
這裡我們手動改一下,順便固定一下ip。

Centos配置

因為真機可以ping通linux所以我們可以上我的ssh工具。
image
image


註:bash視窗在手動關閉,物理通道斷開,之前都可以保持鏈接,所以我們可以把ip改成其他,只是下次需要用新的ip連接。

配置文件地址/etc/sysconfig/network-scripts/ifcfg-enp0s3


因為是==只讀文件==所以需要==許可權==,在命令前加上sudo,或者切換為root用戶。

使用命令
cd /etc/sysconfig/network-scripts/:移動到文件夾
sudo vi ifcfg-enp0s3:編輯文件
image

可以看到 BOOTPROTO 是 ‘dhcp’就是我們上面看到的100伺服器,是由他分配的意思,我們改成static(靜態)
然後我們再在文末添加我們需要的配置

IPADDR=192.168.137.120
GATEWAY=192.168.137.1
NETMASK=255.255.255.0
DNS1=114.114.114.114
DNS2=8.8.8.8

解析:
gateway是網關,就是我們上面拓撲圖看到的插的路由器,就是VBox的192.168.137.1
netmask是網路掩碼,dns1和dns2,一般都是上述值,推薦自行深入瞭解。

註:vi編輯器,按i開始編輯,按esc輸入:wq保存退出

重置一下網卡

service network restart

image

可以看到現在已經可以順利訪問互聯網了。

關於Nat轉換網路

涉及比較多的深入電腦網路知識,
且主機無法訪問虛擬機,不符合本文目標,有機會單開詳解。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 基礎概念 進程(process):進程是電腦中的一個任務,比如打開瀏覽器、IntelliJ IDEA。 線程(thread):進程內部有多個子任務,叫線程。比如IDEA在敲代碼的同時還能自動保存、自動導包,都是子線程做的。 進程和線程的關係就是一個進程包含一個或多個線程。 線程是操作系統調度的最小 ...
  • 為了實現高效併發,虛擬機對 synchronized 做的一系列的鎖優化措施。包括:適應性自旋、鎖消除、鎖粗化、輕量級鎖、偏向鎖。 ...
  • 載入WPF界面時,需要獲取數據,而數據返回的時間比較長,這個時候可以非同步載入數據到界面。 1、首先在XAML中觸發視窗載入事件 2、在後臺代碼中處理視窗載入事件 (1)找到主視窗類 (2)在MainWindow類中添加 XAML中加入的視窗載入事件 這個事件中可以放置各種界面預處理代碼 new Th ...
  • 前言 前一篇說了NOSQL的增刪改查,今天來說說SQL資料庫MySQL的增刪改查。雖然本人已大部分是NOSQL資料庫,但是SQL類資料庫有些功能,比如查詢還是比起NOSQL還是有優勢的。 如查詢產量大於100,SQL是這樣的“xxx>100”,而NOSQL,是這樣的“{xxx:{ $gt: 100} ...
  • 前言: 自從接觸非同步(async await Task)操作後,始終都不明白,這個Task調度的問題。 接觸Quartz.net已經很久了,只知道它實現了一套Task調度的方法,自己跟著Quartz.net源代碼寫了遍,調試後我算是明白了Task調度的一部分事( )。 春風來不遠,只在屋東頭。 理解 ...
  • 微服務之間的通信方式 微服務之間的通信方式常見的有以下幾種: 同步通信:微服務之間通過請求-響應的方式進行通信,例如RESTful API和RPC。通信過程中,請求方需要等待響應方的返回結果,因此可靠性較高,但可能會出現請求排隊、線程阻塞等問題,從而影響系統的響應速度和併發性能。 非同步通信:微服務之 ...
  • 目錄 枚舉的基本用法回顧 枚舉常見的設計模式運用 介紹 智能枚舉 代碼示例 業務應用 小結 枚舉的基本用法回顧 以下是一個常見的 C# 枚舉(enum)的示例: enum Weekday { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday ...
  • 2019年第一次接觸 ABP 框架,那時候還是比較笨重的舊版本的,後來升級到 vNext 版本,我也基於 ABP 模塊化的設計方式開發了一些模塊用於日常工作。這個系列主要為了系統地記錄一下日常工作與學習中的關於 ABP 的一些知識點。 章節目錄 初始 ABP ABP - 模塊載入機制 ABP - 依 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 在我們開發過程中基本上不可或缺的用到一些敏感機密數據,比如SQL伺服器的連接串或者是OAuth2的Secret等,這些敏感數據在代碼中是不太安全的,我們不應該在源代碼中存儲密碼和其他的敏感數據,一種推薦的方式是通過Asp.Net Core的機密管理器。 機密管理器 在 ASP.NET Core ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 順序棧的介面程式 目錄順序棧的介面程式頭文件創建順序棧入棧出棧利用棧將10進位轉16進位數驗證 頭文件 #include <stdio.h> #include <stdbool.h> #include <stdlib.h> 創建順序棧 // 指的是順序棧中的元素的數據類型,用戶可以根據需要進行修改 ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • C總結與剖析:關鍵字篇 -- <<C語言深度解剖>> 目錄C總結與剖析:關鍵字篇 -- <<C語言深度解剖>>程式的本質:二進位文件變數1.變數:記憶體上的某個位置開闢的空間2.變數的初始化3.為什麼要有變數4.局部變數與全局變數5.變數的大小由類型決定6.任何一個變數,記憶體賦值都是從低地址開始往高地 ...
  • 如果讓你來做一個有狀態流式應用的故障恢復,你會如何來做呢? 單機和多機會遇到什麼不同的問題? Flink Checkpoint 是做什麼用的?原理是什麼? ...
  • C++ 多級繼承 多級繼承是一種面向對象編程(OOP)特性,允許一個類從多個基類繼承屬性和方法。它使代碼更易於組織和維護,並促進代碼重用。 多級繼承的語法 在 C++ 中,使用 : 符號來指定繼承關係。多級繼承的語法如下: class DerivedClass : public BaseClass1 ...
  • 前言 什麼是SpringCloud? Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的開發便利性簡化了分散式系統的開發,比如服務註冊、服務發現、網關、路由、鏈路追蹤等。Spring Cloud 並不是重覆造輪子,而是將市面上開發得比較好的模塊集成進去,進行封裝,從 ...
  • class_template 類模板和函數模板的定義和使用類似,我們已經進行了介紹。有時,有兩個或多個類,其功能是相同的,僅僅是數據類型不同。類模板用於實現類所需數據的類型參數化 template<class NameType, class AgeType> class Person { publi ...
  • 目錄system v IPC簡介共用記憶體需要用到的函數介面shmget函數--獲取對象IDshmat函數--獲得映射空間shmctl函數--釋放資源共用記憶體實現思路註意 system v IPC簡介 消息隊列、共用記憶體和信號量統稱為system v IPC(進程間通信機制),V是羅馬數字5,是UNI ...