【Linux】(小白向)详解VirtualBox网络配置-配置Linux网络
本文时间 2023-05-18
作者:sugerqube漆瓷
本文面向新手,重在理解会舍弃不少精密的理论,还请大佬们见谅。
本文目标:成功使用ssh工具登录linux,同时linux能连接外网。
网络基础
关于局域网
一切网络的目的:为了链接两台计算机
知识点1:每台物理机应该有一个ip地址
windows用户可以在win
+R
输入cmd
打开命令行使用ipconfig查看自己的ip
IPv4 就是我这台电脑的ip地址192.168.1.117。
注:192.XXX一般是局域网
知识点2:存在物理链接的两台电脑可以互相访问
一般用在cmd窗口用ping
检查连通性。
用ctrl
+c
结束ping
注:以上即以下情况介默认防火墙开放
知识点2.1:防火墙可以添加规则限制上述的访问。
知识点2.2:路由器一般兼具交换机的功能。
知识点3:在到达最后一个“设备”前经过的节点,可以被等效忽略
知识点3.1:网关地址为直接连接的ip地址
举例一个常见网络架构
以我的A为例,电脑的网线连接着路由器
路由器ip为192.168.1.1
所以网关地址为:192.168.1.1
同时作为同局域网下的B可以直接被我访问。
现在我想要访问sugerqube.org服务器的服务
我的网络经过了路由器的网关
路由器再经过112.X的(光纤)/(交换机),然后就可以等效为下图。
显然我可以访问通局域网下的sugerqube。
再次强调,上述只是一种理解方式,真实的环境还要涉及防火墙和协议
简述VBox的网络(桥接模式)
有上述基础 一个拓扑图就可以理解桥接模式是什么:
这种模式胜在方便,但是有个缺点,他的ip是由真实路由器分配的,不方便我们ssh链接。
当然可以像下文那样改配置文件固定ip,不过存在隐藏问题。
如果是笔记本接校园网,你的网关将是变动的,不能定死
笔者更喜欢下文的host-only模式不继续深入讨论桥接模式。
配置VBox的网络(HostOnly)
VBox的配置
有了上述基础,我们就可以很好的理解与配置VBox的网络了。
IPv4的地址就相当于上述路由器的地址,是等一下我们linux里要配的网关地址。
DHCP服务器,相当于平时路由器给我们分配ip地址,192.168.1.X的由来。
可以看到我们挂在在这个“路由器”下的虚拟机的ip地址范围应该在(101-254)
服务器占用100
地址,相当于上面的sugerqube提供服务的机子。
把虚拟机连上“VBox路由器”
启动配置Linux网络。
开机后使用ip addr
查看ip,发现之前的100
已经为我们分配了ip:192.168.137.120
但是此时的故名思议是host-only,我们的实机没有什么关系。
这里展示一个拓扑图:
所以很明显,现在我们的linux是不联网的。
想要联网,需要把VBox插到我们真机的路由器上,当然不是真的插网线 :)
真机的配置
从控制面板-》网络和Internet-》网络链接,蓝色的理解为“VBox路由器”,红色的理解为真机“路由器”
右键以太网属性
将他共享给VBox。
!!!!!!!!!
在电脑重启后共享极有可能失效,需要重新共享(VBox的bug)。
!!!!!!!!!
新的拓扑结构:
这时候就可以用我们的真机访问虚拟机了。
但是此时Linux还不能访问互联网,因为现在的Linux的网络配置是按照之前的拓扑图生成的。
这里我们手动改一下,顺便固定一下ip。
Centos配置
因为真机可以ping通linux所以我们可以上我的ssh工具。
注:bash窗口在手动关闭,物理通道断开,之前都可以保持链接,所以我们可以把ip改成其他,只是下次需要用新的ip连接。
配置文件地址/etc/sysconfig/network-scripts/ifcfg-enp0s3
因为是==只读文件==所以需要==权限==,在命令前加上sudo,或者切换为root用户。
使用命令
cd /etc/sysconfig/network-scripts/
:移动到文件夹
sudo vi ifcfg-enp0s3
:编辑文件
可以看到 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
开始编辑,按:
输入wq
保存退出
重置一下网卡
service network restart
可以看到现在已经可以顺利访问互联网了。
关于Nat转换网络
涉及比较多的深入计算机网络知识,
且主机无法访问虚拟机,不符合本文目标,有机会单开详解。
【Linux】(小白向)详解VirtualBox网络配置-配置Linux网络的更多相关文章
- Java网络编程和NIO详解7:浅谈 Linux 中NIO Selector 的实现原理
Java网络编程和NIO详解7:浅谈 Linux 中NIO Selector 的实现原理 转自:https://www.jianshu.com/p/2b71ea919d49 本系列文章首发于我的个人博 ...
- Linux启动过程详解(inittab、rc.sysinit、rcX.d、rc.local)
启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息.设备启动顺序信息.硬 ...
- Linux启动过程详解
Linux启动过程详解 附上两张图,加深记忆 图1: 图2: 第一张图比较简洁明了,下面对第一张图的步骤进行详解: 加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的 ...
- 【转发】linux yum命令详解
linux yum命令详解 yum(全 称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理, ...
- linux yum 命令 详解
linux yum命令详解 yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能 ...
- Linux串口编程详解(转)
串口本身,标准和硬件 † 串口是计算机上的串行通讯的物理接口.计算机历史上,串口曾经被广泛用于连接计算机和终端设备和各种外部设备.虽然以太网接口和USB接口也是以一个串行流进行数据传送的,但是串口连接 ...
- linux netstat 命令详解
linux netstat 命令详解 1.功能与说明 netstat 用于显示linux中各种网络相关信息.如网络链接 路由表 接口状态链接 多播成员等等. 2.参数含义介绍 -a (all)显示所 ...
- SVN的Windows和Linux客户端操作详解
SVN的Windows和Linux客户端操作详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Windows客户端操作 1.安装SVN客户端 a>.去官网下载svn软件 ...
- Java网络编程和NIO详解9:基于NIO的网络编程框架Netty
Java网络编程和NIO详解9:基于NIO的网络编程框架Netty 转自https://sylvanassun.github.io/2017/11/30/2017-11-30-netty_introd ...
- (转)linux route命令详解
linux route命令详解 原文:https://www.cnblogs.com/lpfuture/p/5857738.html && http://blog.csdn.n ...
随机推荐
- gorm操作sqlite3,高并发读写如何避免锁库?
1. 场景 这两天一直被这个sqlit3困扰,起因是项目中需要有这样一个中间,中间件承担着API角色和流量转发的角色,需要接收来自至少300个agent的请求数据,和健康检测的请求. 所以当即想到用g ...
- BitBake使用攻略--BitBake的语法知识二
目录 写在前面 1. BitBake中的任务 2. 任务配置 2.1 依赖 2.1.1 内部任务间的依赖 2.1.2 不同菜谱下的任务间依赖 2.1.3 运行时态下的依赖 2.1.4 递归依赖 2.1 ...
- opencv筛选轮廓的几种方法总结
在使用opencv处理图像的时候,在获取ROI区域这一步用的最多的就是找到指定区域,一般是根据轮廓提取,我们可以通过opencv中的findContours()函数来查找图片中的轮廓,但是会发现找到的 ...
- Linux & 标准C语言学习 <DAY6>
一.数组 什么是数组:变量的组合,是一种批量定义相同类型变量的方式 定义: 类型名 数组名[数量]; int arr[5]; 注意:数 ...
- 前后端分离项目,配置问题导致后端session丢失问题
今天遇到一个巨坑,后端写了获取验证码接口,以及验证验证码接口 获取验证码接口: /// <summary> /// 获取验证码 /// </summary> /// <r ...
- 逍遥自在学C语言 | 算数运算符
前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.算数运算符简介 C语言的算数运算符,是用来完成基本的算术 ...
- 迁移学习《Asymmetric Tri-training for Unsupervised Domain Adaptation》
论文信息 论文标题:Asymmetric Tri-training for Unsupervised Domain Adaptation论文作者:Kuniaki Saito, Y. Ushiku, T ...
- pysimplegui之光标 - 元素和窗口的设置
光标 - 元素和窗口的设置 通过将光标设置为元素或整个窗口,可以将普通箭头光标更改为其他内容.当您将鼠标移到元素或窗口上时,结果将是光标发生变化. 最好的例子之一是 URL.当鼠标移到链接上时,用户习 ...
- python:模拟购票的小程序
问题描述:小白学习python的第N天,继续练习.做一个模拟购票的小程序,没有用数据库和文件来存储数据,只是能够单词选择. # hzh 每天进步一点点 # 2022/5/13 17:24 import ...
- AI时代下普通小程序员的想法
在我接触了一系列AI技术后,不禁产生了许多思考.我先后尝试了AI编程.AI写论文.AI写小说.AI绘画等,最近看到了一些关于AI构建虚拟世界以及Auto-GPT的AI类新闻.在这个过程中,我心头涌现出 ...