【知识拓展】大白话说清楚:IP地址、子网掩码、网关、DNS等

news2024/11/18 6:32:15

前言

工作中常听别人说的本地网络是什么意思?同一网段又是什么意思?它俩有关系吗?

在工作中内经常会遇到相关的网络问题,涉及网络通信中一些常见的词汇,如IP地址、子网掩码、网关和DNS等。具体一点:经常会遇到A服务器与B服务器无法连接,而网络管理人员只会跟你说看一下网关配置、是否存在网闸、防火墙等等。

基于此,个人对于此类知识进行简单拓展,不深入,目的是工作中能进行基本使用和与网络管理人员顺利沟通。(顺便吐槽下:个人认为,工作中面向不同专业的人,说大白话是沟通顺畅的基础,比如在公司报销时,你问财务需要什么,财务跟你说增值税专用发票、增值税普通发票、记账联、抵扣联、发票联、税务发票和财政票据等词汇却不举例说明那类费用需要什么票,还反问你这么简单都不懂你烦不烦)。

IP

什么是ip

IP地址是由数字和点组成的字符串,用于标识网络中的唯一设备。每个连接到互联网的设备都必须有一个IP地址,否则无法上网。其基本格式通常为四个数字组,如“192.168.1.1”。

ip格式和组成

ip格式

ip地址长度为32bit,即4个字节(byte)。我们都知道1byte=8bit,可以表示2的8次方,即0~255

所以ip表示形式有两种:

点分十进制:192.168.1.1(常用,方便人理解

二进制表示:11000000101010000000000100000001(即每个数转换成一个8位的2进制数。颜色仅仅为了区分显示每个数,没有其他含义)

ip组成

IP地址由网络号和主机号组成,网络号相同的主机称之为本地网络,网络号不相同的主机称之为远程网络主机。远程网络中的主机要相互通信必须通过网关(Gateway)来传递转发数据。下面详细说明:

IP地址由网络号和主机号组成。

即ip的32bit即4个字节,是由网络号和主机号共同组成的。那么哪部分属于网络号,哪部分属于主机号呢?ip地址有如下规定:

IP地址可以分为A类、B类、C类、D类和E类:

每段IP地址的首尾两个地址是做为网段地址和网段广播地址使用的,不能做为主机地址使用(所以下述主机数都-2,如192.168.1.0和192.168.1.255都不能作为主机地址使用);

0.0.0.0是一个特殊用途的IP地址,通常在网络上下文中指代“所有地址”或“任何地址”、以0开头的其他IP地址(如0.0.0.1)也被保留用于特殊用途,并且不应分配给网络上的设备。例如,0.0.0.0/8块被保留用于设备在尚不知道自己的IP地址时进行自我识别,0.0.0.0/32块用于表示默认路由。(A类网络-1);

127.0.0.0网段,留做本机网卡测试。(A类网络-1

A类网络(大型网络): 网络号是8位,第1位是0,主机位是24位。A类是大型网络,网络地址数量较少,有126(2^7-2)个网络,主机数2^24-2

B类网络(中型网络): 网络号是16位,前两位是10,其他位随意变化,主机位是16位,主机数2^16-2。B类网络地址适用于中等规模的网络,有16384个网络。

C类网络(小型网络): 网络号是24位,前三位是110,其他位随意变化 ,主机位是8位,C类网络地址数量较多,有2097152个网络。适用于小规模的局域网络主机数2^8-2=254

D类网络(组播) 前四位是1110,其他位随意变化。

**E类网络(用于研究):**前五位是11110,其他位随意变化。保留用于研究和将来使用。

网络号相同的主机称之为本地网络,网络号不相同的主机称之为远程网络主机,本地网络中的主机可以直接相互通信。

C类网络(小型网络)为例:

ip地址192.168.1.1和192.168.1.2就是本地网络。

ip地址192.168.1.1和192.168.2.2就是远程网络。

思考一个问题:本地网络中的主机可以直接相互通信,这句话是对的吗?

答案:不一定!

再思考一个问题:同一网段的主机可以直接相互通信,这句话是对的吗?

 

要了解这个问题,我们还需要了解子网掩码

子网掩码

什么是子网掩码

  子网掩码用来指明一个ip地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,它必须结合IP地址一起使用。

子网掩码的作用

  子网掩码一定是配合IP地址来使用的。子网掩码工作过程是:将32位的子网掩码与IP地址进行二进制形式的按位逻辑与运算得到的便是网络地址,将子网掩码二进制按位取反,然后IP地址进行二进制的逻辑“与”(AND)运算,得到的就是主机地址。

这里我是这么理解的,子网掩码+ip确定了当前机器所在的网段。

例如:一台机器ip是192.168.1.1,子网掩码是255.255.255.0

IP地址192.168.1.1转换为二进制是11000000.10101000.00000001.00000001,

子网掩码255.255.255.0转换为二进制是11111111.11111111.11111111.00000000。
进行逐位按位与运算:将IP地址与子网掩码进行逐位按位与(AND)运算。这个运算会比较两个数字的每一位,只有当两位都是1时,结果才是1,否则结果是0。IP地址192.168.1.1和子网掩码255.255.255.0进行按位与运算的结果是11000000.10101000.00000001.00000000。

点分十进制:

192.168.1.1和255.255.255.0进行运算,根据上述红字部分,可知255与任何数计算都是这个数本身,0与任何书计算后都是0. 结果为:192.168.1.0

综上,该机器在子网中的的网络地址是192.168.1.0,主机地址是1

完成这个问题后再继续。

ip是192.168.3.2,子网掩码是255.255.0.0,网络地址是多少?主机地址又是多少?

 答:网络地址:192.168.0.0  主机地址:3.2    

网段

        通常指的是一个计算机网络中使用同一物理层设备能够直接通信的部分。判断两个IP地址是否在同一网段的方法通常是比较它们的网络地址是否相同。

再来看之前的问题:

本地网络中的主机可以直接相互通信,这句话是对的吗?答案肯定是不对。

192.168.1.1和192.168.1.2如果子网掩码不一样,那么肯定是无法通信的。

同一网段的主机可以直接相互通信,这句话是对的吗?答案是对。

网关

        远程网络中的主机要相互通信必须通过网关来传递转发数据,意味着在两个分隔的网络之间进行数据传输时,需要依赖网关这个中介点来完成

        首先,网关(Gateway)是一个网络通信的节点,它作为不同网络或子网之间的桥梁,负责将一个网络中的数据包转发到另一个网络。在没有路由器的情况下,即使两个网络连接在同一台交换机或集线器上,如果它们的子网掩码设置导致它们被识别为不同的网络,那么这两个网络中的主机就无法直接进行TCP/IP通信。这时,就需要通过各自网络的网关来实现数据的传递和转发。

其次,当一个网络中的主机需要发送数据到另一个网络中的主机时,它会将数据包发送到自己的网关。然后,这个网关会处理这些数据包,并将它们转发到目标网络的网关。最终,目标网络的网关会将数据包传递给目标主机。这个过程就是所谓的路由,而执行这个功能的设备通常被称为路由器或者层3交换机。

网闸

网闸是一种信息安全设备,用于在两个独立主机系统之间实现物理隔离和数据摆渡。

网闸的主要功能是保护内部网络不受外部网络的直接攻击和入侵。它通过断开网络模型各层来实现物理隔离,确保内外网络之间没有物理连接、逻辑连接以及基于传输协议的信息交换。网闸允许数据以文件形式在两个网络之间进行无协议的摆渡,这样外部攻击者就无法通过网络连接直接对内网造成威胁。

网闸的技术原理主要基于网络模型各层的断开,这意味着它能够在网络的各个层次上阻断潜在的攻击路径。这种技术不仅能够防止外部攻击,还能有效避免内部信息泄露,因为它控制着数据的流向和访问权限。

与防火墙相比,网闸提供了更高级别的安全隔离。防火墙主要是基于特定规则来允许或拒绝网络流量,而网闸则通过完全隔离的方式来阻止未经授权的访问和数据泄露。因此,网闸在电子政务、电子商务等对安全性要求极高的领域得到了广泛应用。

尽管网闸在安全性方面表现出色,但它也有一些缺点,比如结构复杂,可能会增加系统的维护难度和成本。此外,由于网闸的隔离特性,它可能会限制网络间的通信效率和灵活性。

总的来说,网闸是一种重要的网络安全设备,它在保护内部网络免受外部威胁的同时,也支持必要的数据交换。在选择使用网闸时,需要根据具体的安全需求和网络环境来权衡其优势和潜在的局限性。

隔离网闸如何确保数据在内外网之间安全传输:

1. 物理隔离:网闸在任意时刻都只与内部或外部网络中的一个连接,确保内外网之间不存在实时的网络连接。这种物理断开状态防止了任何基于网络协议的攻击和数据泄露。

2. 非TCP/IP的数据摆渡:网闸不依赖TCP/IP或其他网络通信协议来传输数据。相反,它使用非网络方式(如通过文件)来在内外网之间摆渡数据,这样即使外部网络遭受攻击,也不会影响内部网络的安全。(可以理解数据被暂时存入到网闸中了)

3. 专用硬件设备:网闸通常使用专用的硬件设备(如固态介质、电子开关等)来控制数据的流向,这些设备具有高度的安全性和可靠性,能够有效防止数据泄露和攻击。

4. 访问控制:网闸实现了细粒度的访问控制,包括用户认证、数据加密、内容过滤等,以确保只有授权的数据才能在内外网之间传输。

5. 审计与监控:网闸还提供了详细的日志记录和监控功能,能够帮助管理员追踪和监控所有通过网闸的数据流,以便及时发现和处理潜在的安全威胁。

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

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

相关文章

YOLO数据集制作(二)|json文件转txt验证

以下教程用于验证转成YOLO使用的txt格式,适用场景:矩形框,配合json格式文件转成YOLO使用的txt格式脚本使用。 https://blog.csdn.net/StopAndGoyyy/article/details/138681454 使用方式:将img_path和label_path分别填入对应的图…

分布式光伏监控系统功能模块详解

目前,分布式光伏发电系统的总容量比较小,并且光伏电站的功率受外界环境影响容易出现大起大落的现象。这使电压调整变得很困难。光伏电站运行维护人员不足,长时间不保养维护会影响光伏电站的发电效率。针对上述问题,鹧鸪云基于无线…

pip镜像源

1.1 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple 1.2 阿里云 https://mirrors.aliyun.com/pypi/simple/ 1.3 网易 https://mirrors.163.com/pypi/simple/ 1.4 豆瓣 https://pypi.douban.com/simple/ 1.5 百度云 https://mirror.baidu.com/pypi/simple/ 1.6 中科大 ht…

LLM Agent智能体综述(超详细)

前言 🏆🏆🏆在上一篇文章中,我们介绍了如何部署MetaGPT到本地,获取OpenAI API Key并配置其开发环境,并通过一个开发小组的多Agent案例感受了智能体的强大,在本文中,我们将对AI Agent…

Java获取请求参数

1.简单参数接收 前端请求参数与Controller接受变量名一致 如果参数名不一致,接受不成功。 可以用RequestParam指定参数名,可以用username接收(不推荐)。 required true,表示参数必须传递,如果不传递会报错…

c#多态性的应用

设计一个电脑游戏,游戏中有猪、牛、兔子、青蛙、鸭子等动物,这些动 物都继承于Vertebrata 类(脊椎动物类),Vertebrata类有一个抽象方法Display(),每个动 物都从Vertebrata 类那里继承并重写了Display()方法…

upload-labs靶场通关详解(1-15)

1.pass-01 查看源代码 是js,属于前端校验 可以通过禁用js来上传文件 2.pass-02 根据提示是MIME绕过 MIME:是设定某种扩展名的文件 用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来…

基于springboot+vue+Mysql的在线BLOG网

开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:…

业务上云--从Container+BuildKitd打镜像到在Kubernetes上部署LNMP

一、背景 在基于kubeasz部署kubernetes高可用集群-CSDN博客文章部署的kubernetes集群上部署LNMP 1.1、Kubernetes环境 1.2、Harbor环境 【docker基础】使用Harbor搭建私有仓库-docker-compose使用示例--第二周作业_harbor docker-compose-CSDN博客 Harbor环境升级&#xff…

算法练习day8

反转字符串 代码随想录 0344.反转字符串 344. 反转字符串 - 力扣(LeetCode) (用时:0.05小时) 思路 这道题很简单也很经典。 字符串的反转方法有很多,我这里是用for循环通过数组长度和下标计算来交换。…

Git使用(2):远程仓库

一、创建远程仓库 登录码云Gitee - 基于 Git 的代码托管和研发协作平台。 点击右上角,新建仓库。 创建完成,复制仓库地址接下来要使用。 二、将idea项目推送到码云 首先创建本地仓库VCS -> Create Git Repository。然后选择Manage Remotes&#xff0…

pyqt QComboBox下拉列表框控件

pyqt QComboBox下拉列表框控件 QComboBox效果代码 QComboBox QComboBox 是 PyQt(中的一个控件,它允许用户从下拉列表中选择一个选项。这个控件在需要用户从预定义选项中进行选择时非常有用。 效果 代码 import sys from PyQt5.QtWidgets import QAppl…

谈谈 Spring 的过滤器和拦截器

前言 我们在进行 Web 应用开发时,时常需要对请求进行拦截或处理,故 Spring 为我们提供了过滤器和拦截器来应对这种情况。那么两者之间有什么不同呢?本文将详细讲解两者的区别和对应的使用场景。 (本文的代码实现首先是基于 Sprin…

暗区突围TWITCH掉宝关联帐号不了 无法关联帐号 关联不上

Twitch,作为全球知名的游戏直播平台,常常携手热门游戏如《暗区突围》举办互动活动,为玩家带来独特的参与体验。在这个过程中,“绑定关联”成为了连接直播观众与游戏世界的桥梁。简单来说,Twitch绑定关联《暗区突围》指…

【架构-17】通信系统架构设计理论

通信系统网络架构 1. 局域网网络架构 拓扑结构:星型、总线型、环型、树型。 网络架构:单核心架构(结构简单,地理范围受限)、双核心架构(网络拓扑结构可靠,投资较单核高)、环型架构…

四天学会JS高阶(学好vue的关键)——作用域解构箭头函数(理论+实战)(第一天)

一、作用域 提到作用域(作用域又分为局部作用域和全局作用域),就要想到变量。因为作用域规定了变量能够被访问的范围(也就是作用域是为变量而服务的),为了避免全局变量污染这一情况,所以需要使…

ollama离线部署llama3(window系统)

首先介绍下ollama是什么?Ollama是一个开源的大型语言模型服务工具,旨在为用户提供本地化的运行环境,满足个性化的需求。具体来说,Ollama是一个功能强大的开源框架,可以简化在Docker容器中部署和管理大型语言模型&a…

leetcode算法笔记-算法复杂度

对于时间复杂度,主要包括三种情况: 渐进紧确界: O渐进上界: 渐进下界: 加法原则:不同的时间复杂度相加取阶数最高的 乘法原则:不同的时间复杂度相乘,结果为时间复杂度的乘积 阶乘…

计算机vcruntime140.dll找不到如何修复,分享5种靠谱的修复教程

当您在运行某个应用程序或游戏时遇到提示“找不到vcruntime140.dll”,这通常意味着系统中缺少了Visual C Redistributable for Visual Studio 2015或更高版本的一个重要组件。这个错误通常发生在运行某些程序时,系统无法找到所需的动态链接库文件。小编将…

SwiftUI中的常用图形(Shapes)

概述 在SwiftUI中,常用的图形(Shape)主要有: Circle:圆形 Ellipse:椭圆形 Capsule:胶囊形 Rectangle:矩形 RoundedRectangle:圆角矩形 上面的这些图形都继承了Shape协议…