一、网络基础知识

news/发布时间2024/5/14 21:52:56

1、IP地址和端口号

1.1、IP地址

  • 定义:用于在网络中唯一标识设备的地址。
  • 格式:通常由四个数字组成,以点分十进制表示,例如:192.168.0.1。(IPv4)
  • 作用:允许网络中的设备相互通信,通过IP地址可以定位到特定的设备。

1.2、端口号

  • 定义:用于标识设备上特定进程的数字。
  • 范围:从0到65535。其中,0到1023为系统保留端口,用于特定的网络服务(如HTTP、HTTPS等);其他端口可由用户自定义,用于不同的应用程序或服务。
  • 作用:在网络通信中,与IP地址结合使用,用于指定发送或接收数据的特定进程。确保数据能够准确地到达目标服务或应用程序。

1.3、总结

        IP地址和端口号共同构成了网络通信的基础。IP地址负责定位到网络中的设备,而端口号则负责定位到设备上的特定服务或进程。在进行网络通信时,发送方需要知道接收方的IP地址和端口号,以确保数据能够正确地到达目的地。

        此外,端口还可以分为物理端口和逻辑端口。物理端口是实际存在的硬件接口,如计算机的USB接口、网络接口等。而逻辑端口则是逻辑上用于区分不同服务的端口,它们不对应物理设备上的具体接口,而是用于在网络通信中区分和识别不同的服务。

示例1:

示例2:

2、公网IP和局域网IP

        公网IP和局域网IP(内网IP)是两种不同类型的IP地址,它们在网络通信中各有其特定的作用。

2.1、公网IP(Public IP)

  • 定义:公网IP地址是由Internet网络信息中心(Inter NIC)负责分配,并分配给注册并向Inter NIC提出申请的组织机构。这些IP地址是全球唯一的,用于在Internet上直接访问和识别设备。
  • 特点:
    • 唯一性:每个公网IP地址在全球范围内都是唯一的,不会分配给两个不同的设备。
    • 数量限制:公网IP地址是有限的,不能无限制地分配给所有用户。通常,它们遵循先到先得的原则进行分配。

2.2、局域网IP(Local IP或私有IP)

  • 定义:局域网IP地址属于非注册地址,专门为组织机构的内部网络使用。这些地址通常用于局域网内的设备间通信,而不是用于在Internet上进行通信。
  • 特点:
    • 非唯一性:局域网IP地址在内部网络中是唯一的,但在Internet上不是唯一的。不同的内部网络可以使用相同的局域网IP地址范围,而不会发生冲突。
    • 数量限制:局域网IP地址在理论上可以是无限的,因为它们是专门为内部网络设计的,不需要全球唯一性。

2.3、总结

        公网IP地址用于Internet上的设备识别和通信,具有全球唯一性和访问权限。而局域网IP地址用于内部网络的通信,具有非唯一性和内部访问权限。两者在网络通信中各自扮演着重要的角色,确保设备能够在不同的网络环境中进行通信和连接。

3、局域网IP如何访问Internet

3.1、访问原理

        局域网IP不能直接访问Internet,但可以借助具有公网IP的设备进行中转。如下图所示:

  • 在家里,在公司里,只有路由器才有公网IP
  • 其他电脑只有局域网IP,比如192.18.x.x
  • 家里的电脑,公司的电脑,IP都是192.168.0.100,但是它们并没有冲突:因为它们处于不用的局域网
  • 局域网里的电脑要访问公网,怎么办?要路由器帮忙!

3.2、访问流程

(1)通过路由器访问公网IP流程:

  • 主机A的局域网IP是10.1.1.100,它使用端口1025,去访问公网211.100.7.34
  • 但是它没有公网IP,跟路由器说:哥们,帮帮忙
  • 路由器就把数据包里的(10.1.1.100:1025)改成自己的IP和端口(162.105.176.65:16384),发出伪造的数据包
  • 服务器收到后,返回数据给路由器(162.105.176.65:16384)
  • 路由器收到数据后查表:
    • 这是主机A要我取的数据
    • 于是把数据包里的目的(162.105.176.65:16384)改为(10.1.1.100:1025)
    • 并发给主机A
  • 主机A收到数据

(2)由以上流程可知:

  • 局域网的电脑,借助路由器,可以访问公网
  • 需要局域网内的电脑主动发起网络连接
  • 公网无法主动访问局域网内的电脑:
    • 公网主动访问路由器时
    • 路由器:你访问谁呢?在路由器里都没有记录,丢掉
    • 这可以保护局域网内的电脑,比如前两年爆发的勒索病毒

4、不同局域网内的设备通信

(1)假设在局域网内有开发板,另一个局域网内有手机,两者均连接可上网的路由器。如下图所示:

(2)请问手机怎么才能访问到开发板?

  • 硬件上:中间需要加上服务器,如下图所示。
  • 协议上:有很多选择,例如MQTT,它更适合物联网。

访问流程:

  • 手机发送数据包给服务器
  • 开发板访问服务器拿到数据

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

如若内容造成侵权/违法违规/事实不符,请联系编程老四网进行投诉反馈email:xxxxxxxx@qq.com,一经查实,立即删除!

相关文章

Word第一课

文章目录 1. 文件格式1.1 如何显示文件扩展名1.2 Word文档格式的演变1.3 常见的Word文档格式 3. 文档属性理解文档属性查看文档属性 4. 显示比例方式一: 手动调整方式二: 自动调整 5. 视图、窗口视图 1. 文件格式 1.1 如何显示文件扩展名 文档格式指的…

ThreadLocal“你”真的了解吗?(二)

《ThreadLocal“你”真的了解吗?(一)》这篇文章梳理了ThreadLocal的基础知识,同时还梳理了java中线程的创建方法以及这两者之间的关系,本篇文章我们将继续梳理与ThreadLocal相关,在上一节也提过的另一组件T…

什么是负载均衡集群?

目录 1、集群是什么? 2、负载均衡集群技术 3、负载均衡集群技术的实现 4、实现效果如图 5、负载均衡分类 6、四层负载均衡(基于IP端口的负载均衡) 7、七层的负载均衡(基于虚拟的URL或主机IP的负载均衡) 8、四层负载与七层…

板块一 Servlet编程:第八节 文件上传下载操作 来自【汤米尼克的JavaEE全套教程专栏】

板块一 Servlet编程:第八节 文件的上传下载操作 一、文件上传(1)前端内容(2)后端内容 二、文件下载(1)前端的超链接下载(2)后端下载 在之前的内容中我们终于结束了Servle…

C语言每日一题(61)盛最多水的容器

题目链接 力扣 11 盛最多水的容器 题目描述 给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水…

【《高性能 MySQL》摘录】第 2 章 MySQL 基准测试

文章目录 2.1 为什么需要基准测试2.2 基准测试的策略2.2.1 测试何种指标 2.3 基准测试方法2.3.1 设计和规划基准测试2.3.2 基准测试应该运行多长时间2.3.3 获取系统性能和状态2.3.4 获得准确的测试结果2.3.5 运行基准测试并分析结果2.3.6 绘图的重要性 2.4 基准测试工具…

【深蓝学院】移动机器人运动规划--第6章 模型预测控制(MPC)与运动规划--笔记

0. Outline 1. Reactive Control(反应式控制) 控制学中的 “Reactive Control” 通常指的是一种控制策略,它依赖于系统对特定事件或变化的即时反应,而不是按照预定的计划或策略行动。这种控制往往是基于当前的传感器输入来做出决…

在Sora引爆视频生成时,Meta开始用Agent自动剪视频了

未来,视频剪辑可能也会像视频生成领域一样迎来 AI 自动化操作的大爆发。 这几天,AI 视频领域异常地热闹,其中 OpenAI 推出的视频生成大模型 Sora 更是火出了圈。而在视频剪辑领域,AI 尤其是大模型赋能的 Agent 也开始大显身手。 …

GPT-SoVITS 快速声音克隆使用案例:webui、api接口

参考: https://github.com/RVC-Boss/GPT-SoVITS 环境: Python 3.10 PyTorch 2.1.2, CUDA 12.0 安装包: 1、使用: 1)下载项目 git clone https://github.com/RVC-Boss/GPT-SoVITS.git2)下载预训练模型 https://huggingface.co/lj1995/GPT-SoVITS 下载模型文件放到GPT…

XML的写法

下面我将以如下代码来解释下XML的写法 <?xml version"1.0" encoding"UTF-8" ?> <Steam><steam id"1"><zhanghao>admin</zhanghao><mima>123</mima><num>120</num></steam><st…

c++服务器开源项目Tinywebserver运行

c服务器开源项目Tinywebserver运行 一、Tinywebserver介绍二、环境搭建三、构建数据库四、编译Tinywebserver五、查看效果 Tinywebserver是github上一个十分优秀的开源项目&#xff0c;帮助初学者学习如何搭建一个服务器。 本文讲述如何在使用mysql跟该项目进行连接并将项目运行…

PHP+vue+mysql校园论坛bbs系统w076f-

本文尝试以B/S架构设计模式中的vue框架&#xff0c;php语言为基础&#xff0c;通过必要的编码处理、BBS论坛系统整体框架、功能服务多样化和有效性的高级经验和技术实现方法&#xff0c;旨在完成一个快速、高效、便捷的BBS论坛系统。本系统以用户与管理员两类人&#xff0c;作为…

【MATLAB源码-第146期】基于matlab的信源编码仿真GUI,对比霍夫曼编码,算术编码和LZ编码。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 霍夫曼编码、算术编码和LZ编码是三种广泛应用于数据压缩领域的编码技术。它们各自拥有独特的设计哲学、实现方式和适用场景&#xff0c;因此在压缩效率、编解码速度和内存使用等方面表现出不同的特点。接下来详细描述这三种编…

03|Order by与Group by优化

索引顺序依次是 &#xff1a; name,age,position 案例1 EXPLAIN SELECT * FROM employees WHERE name LiLei AND position dev ORDER BY age;分析: 联合索引中只是用到了name字段做等值查询[通过key_len 74可以看出因为name字段的len74]&#xff0c;在这个基础上使用了age进…

React18原理: React核心对象之Update、UpdateQueue、Hook、Task对象

Update 与 UpdateQueue 对象 1 ) 概述 在fiber对象中有一个属性 fiber.updateQueue是一个链式队列&#xff08;即使用链表实现的队列存储结构&#xff09;是和页面更新有关的 2 &#xff09;Update对象相关的数据结构 // https://github.com/facebook/react/blob/v18.2.0/pa…

JDK8新特性全解析:Java8变革之旅

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …

大模型相关论文笔记

Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks 用于知识密集型NLP任务的检索增强生成 Facebook 2020 PDF CODE &#xff08;论文代码链接已失效&#xff0c;以上是最新链接&#xff09; 引言 大模型有幻觉问题&#xff08;hallucinations&#xff09;&…

力扣随笔之寻找重复数(中等287)

思路1&#xff1a;暴力解法&#xff0c;根据要求不修改数组且只用常量级O(1)的额外空间&#xff0c;我们写两层嵌套循环&#xff0c;寻找重复的数;可以解决部分问题&#xff0c;但会超出时间限制无论Java还是C; Java实现&#xff1a; class Solution {public int findDuplicat…

if语句test

import com.sun.jdi.PathSearchingVirtualMachine;import java.sql.SQLOutput; import java.util.Scanner;public class Test5 {public static void main(String[] args) {//在电影院检查票据&#xff0c;票据在1-100之间才是真实有效的票据&#xff0c;且奇数做左边&#xff0…

费舍尔FISHER金属探测器探测仪维修F70

美国FISHER LABS费舍尔地下金属探测器&#xff0c;金属探测仪等维修&#xff08;考古探金银铜探宝等仪器&#xff09;。 费舍尔F70视听目标ID金属探测器&#xff0c;Fisher 金属探测器公司成立于1931年&#xff0c;在实验条件很艰苦的情况下&#xff0c;研发出了地下金属探测器…
推荐文章