Windows 和 Ubuntu通讯的网络设置

news2024/10/19 4:09:31

如果你是一个嵌入式工程师,因为工作需要,在linux下进行开发,一定会遇见配网问题。这篇文章解决Windows 和虚拟机Ubuntu通讯的网络设置的问题。

Windows的网络配置:

		在配置网络前,先了解一下windows和ubuntu的网络构成:
			IP地址     ----> 上网凭证 独立 
			子网掩码  ----> 用来判断两个IP是否在同一网段下
            网关        ----> 用来管理同一网段下的信息发送和接收
            DNS域名解析 --> 用来解析 某个域名的真实地址

windows网络配置

逐个分析:

IP:

 IP的逻辑是在网络上声明你的地址,通过地址的方式访问网络中的数据
		192.168.10.xx   (xx:分配到的数值)
                        例如:192.168.10.11  ---> 分配到第11号
                               192.168.10.21   ---> 分配到第21号
	一个IP地址对应一台电脑,绝不可以被分配给2台电脑,会导致抢占网络而不可用。IP地址从 0~255,其中有几个位置是不可用的:
	IPv4:4个字节  32位长度 (最大值为 255.255.255.255)
		潜规则:在一个网段下: 192.168.10.(0~255)前三位代表固定的网段,最后一位可分配网络。
	其中,在一个网段下,有几个IP是不能用的:
		192.168.10.0 ;--->用来代表网段 
		192.168.10.1 ;--->默认为网关 
		192.168.10.255;-->网段广播号  

子网掩码:

子网掩码类似固定值  
              前缀长度:24 
              子网掩码:255.255.255.0

网关:

网关:用来管理同一网段下的信息发送和接收。

请添加图片描述

DNS域名解析:

DNS域名解析: 固定值 
    例如抖音账号下会显示你的:【IP所属地】DNS可以显示到具体街道地址详情的机器定位,只是由于涉及个人隐私所以隐藏了。
        DNS根据网络运营商提供:
              例如我当前的网络来源于: 深圳 电信 202.96.128.86
	还可以解析网络中某些页面的真实地址:举个例子(www.baidu.com)
	https://www.baidu.com/   ----》协议名  -----》然而,所有的网络本质上都是一个独立的IP地址
	IP地址(即为这个网络的真名):

IP地址(即为这个网络的真名)

DNS域名解析
以前可以直接使用Ip访问,因为直接使用IP访问没有经过安全协议,于是,百度那边的后端会认为这一次访问是一次攻击,因而此次访问被拦截。(如下,直接使用IP地址访问对应网址)
IP地址访问遭遇拦截

在了解了以上知识储备的基础之上,我们来进行对本机和ubuntu的网络配置。

windows网络配置

windows网络配置
请添加图片描述

修改windows的IP地址:
		 1>自动:我们这里不使用自动分配,缺点:混乱
				windows可以自动分配IP,但是外接开发板,Ubuntu统一IP地址的时候不行,需要统一IP地址。
				如果没有分配好IP地址,后期可能会出现的问题:造成开发板IP 和 windowsIP 冲突,导致无法运行。所以,我们选择手动配置IP地址,进行有序排列。

		 2>手动 ------> 有序排列 
			IP:192.168.10.XX (XX:自己分配,避开默认不可用的IP值)
                            子网掩码:255.255.255.0 
                         或前缀长度:24
                             网关:192.168.10.1 (看自己的具体情况)
                             DNS:202.96.128.86 (我用的深圳电信)
						  备用DNS:114.114.114.114

ubuntu 网络配置

网络构成和windows一样
ubuntu的IP修改比较特殊: 
          	分两种修改方法: 
                  1>图形界面修改(如下图)
                          通过桌面版本,对桌面图标进行直接修改
                          简单,快捷,比较符合我们常年使用windows的习惯 
                          缺点: 
                                1.1>修改优先级没有字符界面高,字符界面中修改的内容会将图形界面中的内容覆盖掉
                                        
                  2>字符界面修改
                          通过命令和指令达到操作目的
                          需要操作者懂命令,懂命令逻辑 和指令,有一定的门槛
                          缺点: 
                                2.1>使用起来相对麻烦 
                                2.2>找文件不方便

请添加图片描述
请添加图片描述

			3>ubuntu的网络配置(Ubuntu18.0之后的版本)
				 ☆☆☆ 字符界面修改 
				1>需要从VMware中把 网络适配器改成 **桥接模式**(如下图,先将Ubuntu设置为桥接模式)

                        桥接模式:ubuntu的网络独立,windows的网络独立相互之间不影响,
                        桥接模式是真正在路由器中申请一个独立IP进行上网。

						NAT模式:ubuntu的网络,复制windows的IP,然后进行别名相互影响。
                                        
                        主机模式:ubuntu的网络完全依赖于windows的网络,
                         注意:修改网络模式,需要重启使其生效。 

请添加图片描述
请添加图片描述

				2>通过修改网络配置文件达到配网的目的:
                       2.1> ping www.baidu.com
                            备注:打开终端的快捷键:ctrl + alt + t
					
				3>如果有网络执行以下语句: 
                            sudo apt-get install net-tools 
                            ifconfig

                            如果没有网络就忽略,执行以下操作
				            3.1>打开网络配置文件 
                                   sudo vim /etc/netplan/*.yaml 
                                       
                                   */没有vim 
                                       	sudo gedit /etc/netplan/*.yaml
                                   	*/(文本编辑操作面板)

请添加图片描述
请添加图片描述

						3.2>写入网络配置数据 
							备注:addresses: [192.168.7.111/24] -----> [ip地址/子网掩码的前缀长度]
								 gateway4: 192.168.10.1 -----> 网关
						   	 	 nameservers:
                    					addresses: [202.96.128.86, 114.114.114.114] -----> DNS/DNS备选
                            重点:需要严格注意文件中的缩进

	至Ubuntu17.10以后interfaces的配置就无法生效,已经被时代淘汰,由于去配置过于复杂,官方使用了一种更简便的方法——netplan,代替interfaces的配置:

	此处为18.04.04版本
	Ubuntu18的网络配置:

	打开配置文件:sudo vim /etc/netplan/*.yaml,写入以下配置内容:
				(*代表文件名。)

				(注意不能有空格,tab键需要严格控制)
				 ethernets:
    					ens33:
            						dhcp4: no
            						dhcp6: no
            						addresses: [192.168.10.111/24]
            						gateway4: 192.168.10.1
            						nameservers:
                    							addresses: [202.96.128.86, 114.114.114.114]

				配置完成保存退出,
				执行下面的命令
				 sudo netplan apply

				配置完成生效后使用ifconfig,ping等命令检测网络是否配置成功。

请添加图片描述
请添加图片描述
请添加图片描述
以上,windows和Ubuntu通讯的网络设置已配好。

我是一个十分热爱技术的程序员,希望这篇文章能够对您有帮助,也希望认识更多热爱程序开发的小伙伴。
感谢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2218215.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CTFHUB技能树之SQL——过滤空格

开启靶场,打开链接: 既然是过滤空格,绕过空格的方法: 用/**/或%0a替代空格 (1)判断注入点 1 and 11# 会显示hacker 1/**/and/**/11# 有回显 1/**/and/**/12# 无回显,说明是整数型注入 &#…

嵌入式C++中内存分配基本实现方法

大家好,今天主要给大家分享一下,如何使用计算机中的内存空间进行分配,观察具体现象。 第一:C语言动态空间分配方式 第二:C++中动态内存分配方法 new 可以自动计算数据类型的大小 与 类型的转换 malloc 只能手动进行。 2.new 可以在分配空间的时候初始化 malloc 不行。 第三…

python采集汽车之家数据

python采集汽车之家数据 一、寻找数据接口二、发送请求获取响应三、解析数据四、完整代码一、寻找数据接口 如下图所示,在汽车之家首页点击报价图标: 在下图中选择价位,例如选择15-20万: 打开浏览器开发者工具,刷新页面,找到数据接口。接下来,通过翻页寻找接口url的变…

uni-app uni.setTabBarBadge 不生效

‘text’属性,类型必须是字符串,而接口返回的是数值,没有注意到,所以怎么都不生效,也不会有报错!

渗透测试导论

渗透测试的定义和目的 渗透测试(Penetration Testing)是一项安全演习,网络安全专家尝试查找和利用计算机系统中的漏洞。 模拟攻击的目的是识别攻击者可以利用的系统防御中的薄弱环节。 这就像银行雇用别人假装盗匪,让他们试图闯…

day-68 使二进制数组全部等于 1 的最少操作次数 I

思路 关键:对同一个i至多操作一次,就可以做到最少的操作次数,且操作的顺序不重要,那么即可从左到右操作,结果一样的,遇到1不操作,遇到0则操作,用一个变量记录操作次数,最…

Go程序的一生——Go如何跑起来的?

​​​​​​​ 引入 我们从一个 Hello World 的例子开始: package mainimport "fmt"func main() {fmt.Println("hello world") }当我用我那价值 1800 元的 cherry 键盘潇洒地敲完上面的 hello world 代码时,保存在硬盘上的 hell…

青少年编程能力等级测评CPA C++一级试卷(1)

青少年编程能力等级测评CPA C一级试卷(1) 一、单项选择题(共20题,每题3.5分,共70分) CP1_1_1.在C中,下列变量名正确的是( )。 A.$123 B&#…

无人机之定高算法篇

一、无人机高度测量原理 无人机的高度测量通常依赖于多种传感器,其中主要包括: 气压计:通过测量大气压力的变化来确定高度。在大气中,随着高度的增加,气压会逐渐降低。无人机搭载的气压计会感知大气的压力变化&#…

当我们修复测试用例时,到底是修复的什么?

当我们运行了测试用例,发现其中一些测试用例未能通过。ok,这下要修复测试用例了!但是,到底需要修复哪些内容呢? 其实从用例被加载到最终执行的过程中,有很多因素可能导致测试失败: 在测试构建过…

C语言中的文件操作:从基础到深入底层原理

文件操作是几乎所有应用程序的重要组成部分,特别是在系统级编程中。C语言因其高效、灵活以及接近硬件的特点,成为了文件操作的理想选择。本文将全面深入地探讨C语言中的文件操作,从文件系统的概念到具体的文件操作函数,再到底层的…

生成器和迭代器

迭代器 定义 迭代器是一个实现了选代协议的对象,它可以让我们遍历一个容器中的所有元素,而不需要知道容器的内部结构,迭代器可以被用于遍历列表、元组、字典、集合等容器类型。 工作原理 __iter__():方法返回迭代器对象本身,有…

《15分钟轻松学Go》教程目录

在AI快速发展的时代,学习Go语言依然很有用。Go语言擅长处理高并发任务,也就是说可以同时处理很多请求,这对于需要快速响应的AI服务非常重要。另外,Go适合用来处理和传输大量数据,非常适合机器学习模型的数据预处理。 …

leetcode动态规划(一)-理论基础

本节主要参考:代码随想录 题目分类 动态规划释义 动态规划,英文:Dynamic Programming,简称DP,如果某一问题有很多重叠子问题,使用动态规划是最有效的。 动态规划中每一个状态一定是由上一个状态推导出来…

WinX86内核02-驱动程序

把昨天的程序改用 c++ 编译,改成 .cpp ,发现编译报错 原因是名称粉碎,因此可以直接 extern “C”声明一下这个函数 或者用 头文件(推荐) 因为 在头文件中 可以把 头文件一起包含进去 #pragma once extern "C" { #include <Ntddk.h> ​ /*驱动入口函…

一文搞懂模型倍率怎么计算的,以及模型分组倍率原理!

&#x1f4cd; 已知&#xff1a; ① 输入token&#xff1a;又名 提示、Input token 数 ② 输出token&#xff1a;又名 补全、Output token 数 &#x1f4cd; 基准价格【最初 gpt3.5 的价格&#xff0c;所以倍率越大&#xff0c;越聪明越贵&#xff0c;倍率越小越省钱越笨】 on…

秋招面试题记录

嵌入式软件开发 网上搜集的题目 1.Static关键词的作用&#xff1f; static 关键字有三个主要作用&#xff1a; 局部变量&#xff1a;在函数内部&#xff0c;static 局部变量只初始化一次&#xff0c;且在函数调用结束后仍然保留其值。全局变量/函数&#xff1a;在文件内部&a…

产品自问:前台和中后台

产品自问&#xff1a;前台和中后台 叮嘟&#xff01;这里是小啊呜的学习课程资料整理。好记性不如烂笔头&#xff0c;今天也是努力进步的一天。一起加油进阶吧&#xff01; 前台和中后台通常根据以下几个方面进行区分&#xff1a; 一、功能定位 前台&#xff1a;主要面向外部…

redo文件误删除后通过逻辑备份进行恢复

问题描述 开发同事让在一个服务器上查找下先前库的备份文件是否存在&#xff0c;如果存在进行下恢复。翻了服务器发现备份文件存在&#xff0c;多愁了一眼竟翻到了该备份文件于2024.6.17日恢复过的日志&#xff0c;赶紧和开发沟通说2024.6.17号已经恢复过了为啥还要恢复&#x…

【Linux】Anaconda下载安装配置Pytorch安装配置(保姆级)

目录 Anaconda下载 Anaconda安装 conda init conda --v Conda 配置 conda 环境创建 conda info --envs conda list Pytorch安装配置 检验安装情况 检验是否可以使用GPU Anaconda下载 可以通过两种途径完成Anaconda安装包的下载 途径一&#xff1a;本地windows下…