关于内网外网,ABC类地址,子网掩码划分
本文的三个关键字是:内网外网,ABC类地址,子网掩码划分。围绕以下问题展开:
如何从ip区分外网、内网?win和linux系统中,如何查询自己的内网ip和外网ip。开发视角看内外网更多是处于安全考虑,接口最好要么鉴权、要么仅支持内网访问。
文章目录
- 1.如何根据IP区分内网外网
- 2.win和linux系统中,如何查询自己的内网ip和外网ip
- 3.外网地址泄漏风险
- 4.如何防止内网和外网地址泄漏
- 5.A类、B类、C类地址
- 6.曾经纠结过的问题
- 6.1 网络部分占9位的是否属于A类呢?
- 6.2 是否是内外网跟是否是ABC类地址是两个概念不要混为一谈
1.如何根据IP区分内网外网
内网IP一般是 192.168.x.x、10.x.x.x、172.16.x.x 等范围
内网IP地址范围:
内网IP地址通常指的是局域网(LAN)中使用的IP地址,它们属于以下的预留地址范围:
A类: 10.0.0.0 到 10.255.255.255
B类: 172.16.0.0 到 172.31.255.255
C类: 192.168.0.0 到 192.168.255.255
127.0.0.1 是回环地址,通常用来指代本机。
其他IP则是公网IP,即外网IP。
2.win和linux系统中,如何查询自己的内网ip和外网ip
在 Windows 系统中查询:
查询内网IP地址:
打开命令提示符(按 Win + R 输入 cmd 并回车)。
输入 ipconfig,按回车。
找到你所连接的网络适配器(如无线网卡或以太网卡),在“IPv4 地址”下你将看到内网IP地址,通常是 192.168.x.x 或 10.x.x.x 等。
查询外网IP地址:
打开浏览器,访问 https://www.whatismyip.com 或 https://ipinfo.io,这些网站会显示你当前的公网IP。
你也可以使用命令行工具,通过访问公网接口查询外网IP,如:
nslookup myip.opendns.com resolver1.opendns.com
2. 在 Linux 系统中查询:
查询内网IP地址:
打开终端。
输入以下命令:
ifconfig
或者
ip a
在输出中,查找你所连接的网络接口(通常是 eth0 或 wlan0),找到 inet 后面的IP地址,通常为 192.168.x.x 或 10.x.x.x 等。
查询外网IP地址:
打开终端。
输入以下命令:
curl ifconfig.me
或
curl ipinfo.io/ip
这些命令会返回你当前的外网IP地址。
3.外网地址泄漏风险
外网地址泄漏是指你的公网IP地址被外部知晓。公网IP是设备在互联网中的唯一标识,攻击者可以通过这个地址访问你的网络。
风险程度:
直接风险较大:外网IP地址的泄漏意味着攻击者知道了你的网络的“入口”。如果外部网络有不当配置(如开放了不必要的端口、使用了弱口令等),攻击者可能会尝试通过外网地址进行入侵。公网IP泄漏更容易遭到DDoS攻击或暴力破解等攻击。
间接风险较大:外网地址泄漏可能成为多种攻击(如端口扫描、暴力破解等)的起点。如果防火墙和端口映射配置不当,攻击者可能通过外网地址扫描到内网的漏洞。
保护措施:
使用防火墙:确保你的防火墙配置正确,限制外部流量的进入,只允许特定的服务和端口对外暴露。
端口映射与端口转发:如果需要将外网流量转发到内网,确保只转发必要的端口,并加强这些端口的安全防护。
DDoS 防护:采用CDN或防DDoS服务,保护你的公网IP免受大规模攻击。
入侵检测系统(IDS):通过入侵检测系统监控外部网络的访问,及时发现可疑行为。
4.如何防止内网和外网地址泄漏
防止内网和外网地址泄漏的最佳方法是:强化网络安全、合理配置防火墙、最小化暴露的服务、并进行实时监控
5.A类、B类、C类地址
A类、B类、C类子网掩码是基于IP地址分类的传统划分方法。每个类的子网掩码决定了网络部分和主机部分的划分。
A类网络部分8位,主机部分24位,子网掩码 255.0.0.0;
B类网络部分16位,主机部分16位,子网掩码 255.255.0.0;
C类网络部分24位,主机部分8位,子网掩码 255.255.255.0;
类别 IP地址范围 子网掩码 网络部分 主机部分
A类 1.0.0.0 - 127.255.255.255 255.0.0.0 (/8) 8 位 24 位
B类 128.0.0.0 - 191.255.255.255 255.255.0.0 (/16) 16 位 16 位
C类 192.0.0.0 - 223.255.255.255 255.255.255.0 (/24) 24 位 8 位
6.曾经纠结过的问题
6.1 网络部分占9位的是否属于A类呢?
属于。它只是经过的子网划分,使得网络部分可表达的地址变得更多了。简单理解,A类默认网络部分是8位,不得低于8位,可以进行子网划分,但不得超过16位(因为网络部分占16位就是B类地址了)
6.2 是否是内外网跟是否是ABC类地址是两个概念不要混为一谈
相关文章:
关于内网外网,ABC类地址,子网掩码划分
本文的三个关键字是:内网外网,ABC类地址,子网掩码划分。围绕以下问题展开: 如何从ip区分外网、内网?win和linux系统中,如何查询自己的内网ip和外网ip。开发视角看内外网更多是处于安全考虑,接口…...
nginx 配置 本地启动
1.nginx下载地址:nginx: download nginx详解:Nginx配置终极版指南(全网最详细)_nginx_脚本之家 2.vue 项目打包生成dist文件里面的文件复制到下载好的nginx的html目录下 3.配置nginx配置文件 打包生成的dist前端包都是属于生产环…...
UE5 打包要点
------------------------- 1、需要环境 win sdk ,大约3G VS,大约10G 不安装就无法打包,就是这么简单。 ----------------------- 2、打包设置 编译类型,开发、调试、发行 项目设置-地图和模式,默认地图 项目…...
OneFlow的简单介绍
OneFlow 是北京一流科技有限公司旗下的采用全新架构设计的开源工业级通用深度学习框架。以下是关于 OneFlow 的详细介绍: 本篇文章的目录 特点 功能 应用场景 发展历程 特点 简洁易用的接口:为深度学习相关的算法工程师提供一套简洁易用的用户接口…...
聊一聊 C#异步 任务延续的三种底层玩法
一:背景 1. 讲故事 最近聊了不少和异步相关的话题,有点疲倦了,今天再写最后一篇作为近期这类话题的一个封笔吧,下篇继续写我熟悉的 生产故障 系列,突然亲切感油然而生,哈哈,免费给别人看程序故…...
(k8s)Flannel Error问题解决!
1.问题描述 书接上回,我们在解决kubectl不断重启的时候引入了Flannel 网络插件,但是一上来就报错, 2.问题解决 自己的思路:照例开始检查 1.先检查一下目前Flannel的pod kubectl get pods --all-namespaces 2.检查 Flannel的po…...
Delaunay三角刨分算法理解及c#过程实现
Delaunay三角刨分算法理解及c#过程实现 0 引言1 关于三角剖分2 Delaunay三角剖分算法实现及对比3 结语0 引言 💻💻AI一下💻💻 三角剖分是什么? 三角剖分是一种将平面或曲面划分成三角形集合的方法。在二维平面中,给定一个平面区域(可以是多边形等),通过连接区域…...
Backend - ADO.NET(C# 操作Oracle、PostgreSQL DB)
目录 一、引入参考 1. ConfigurationManager的调用前提: 2. NpgsqlConnection的调用前提: 3. OracleConnection的调用前提: 二、设置数据库链接字串 1. 在App.config中设定链接数据库详情 2. 获取数据库链接字串 三、调用 1.调用Oracle数据库…...
Idea-离线安装SonarLint插件地址
地址: SonarQube for IDE - IntelliJ IDEs Plugin | Marketplace 选择Install Plugin from Disk..,选中下载好的插件,然后重启idea...
Leetcode Hot100 第三题 234. 回文链表
用快慢指针找到链表中间节点反转后面一段链表遍历每个节点做判断为什么是while pre: 不能写while head呢 ? 答:因为slow节点在反转后,他的前序节点除了反转之后的节点,之前正序的节点仍然存在的,即slow.pre 的next依旧是slow, 我…...
Python教程丨Python环境搭建 (含IDE安装)——保姆级教程!
工欲善其事,必先利其器。 学习Python的第一步不要再加收藏夹了!提高执行力,先给自己装好Python。 1. Python 下载 1.1. 下载安装包 既然要下载Python,我们直接进入python官网下载即可 Python 官网:Welcome to Pyt…...
SpringBoot项目实战(39)--Beetl网页HTML文件中静态图片及CSS、JS文件的引用和展示
使用Beetl开发网页时,在网页中使用的CSS、JS、图片等静态资源需要进行适当的配置才可以展示。大致的过程如下: (1)首先Spring Security框架需要允许js、css、图片资源免授权访问。 (2)网站开发时࿰…...
ARIMA模型 (AutoRegressive Integrated Moving Average) 算法详解与PyTorch实现
ARIMA模型 (AutoRegressive Integrated Moving Average) 算法详解与PyTorch实现 目录 ARIMA模型 (AutoRegressive Integrated Moving Average) 算法详解与PyTorch实现1. ARIMA模型概述1.1 时间序列预测1.2 ARIMA的优势2. ARIMA的核心技术2.1 自回归 (AR)2.2 差分 (I)2.3 移动平…...
【Uniapp-Vue3】swiper滑块视图容器的用法
我们使用swiper标签就可以实现轮播图的效果。 一、swiper组件的结构 整体的轮播图使用swiper标签,轮播的每一页使用swiper-item标签。 <template><swiper class"swiper"><swiper-item><view class"swiper-item">111…...
allure报告修改默认语言为中文
1、项目根目录创建.py文件,把代码复制进去 import os from pathlib import Pathdef create_settings_js_file(directory"../pytest_mytt/reports/allures/", filenamesettings.js):# 创建或确认目录存在Path(directory).mkdir(parentsTrue, exist_okTrue…...
国产3D CAD将逐步取代国外软件
在工业软件的关键领域,计算机辅助设计(CAD)软件对于制造业的重要性不言而喻。近年来,国产 CAD 的发展态势迅猛,展现出巨大的潜力与机遇,正逐步改变着 CAD 市场长期由国外软件主导的格局。 国产CAD发展现状 …...
GolangWeb开发- net/http模块
文章目录 Golang开发-案例整理汇总一、net/http介绍二、HTTP客户端Get请求Post请求三、HTTP服务端总结Golang开发经典案例,点击下方链接 Golang开发-案例整理汇总 一、net/http介绍 Go语言内置的net/http包提供了HTTP客户端和服务端的实现。 文档链接: https://pkg.go.dev/n…...
Vue2中使用Echarts
1.安装echarts 在项目根目录下,使用npm或yarn安装ECharts: npm install echarts --save 或者 yarn add echarts 2.在相应的vue页面中引入echarts <script> import * as echarts from "echarts"; </script> 3.代码解析 <…...
AI赋能服装零售:商品计划智能化,化危机为转机
在服装零售这片竞争激烈的战场上,每一个细微的决策都可能成为品牌兴衰的关键。当市场波动、消费者口味变化、供应链挑战接踵而至时,许多品牌往往将危机归咎于外部环境。然而,真相往往更为深刻——“危机不是外部的,而是你的商品计…...
Spring AI ectorStore
Spring AI中的VectorStore是一种用于存储和检索高维向量数据的数据库或存储解决方案,它在AI应用中扮演着至关重要的角色。以下是对Spring AI VectorStore的详细解析: 一、VectorStore的基本概念 定义:VectorStore特别适用于处理那些经过嵌入…...
深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...
Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误,它们的含义、原因和解决方法都有显著区别。以下是详细对比: 1. HTTP 406 (Not Acceptable) 含义: 客户端请求的内容类型与服务器支持的内容类型不匹…...
进程地址空间(比特课总结)
一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...
2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
Java - Mysql数据类型对应
Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...
【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)
要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况,可以通过以下几种方式模拟或触发: 1. 增加CPU负载 运行大量计算密集型任务,例如: 使用多线程循环执行复杂计算(如数学运算、加密解密等)。运行图…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...
回溯算法学习
一、电话号码的字母组合 import java.util.ArrayList; import java.util.List;import javax.management.loading.PrivateClassLoader;public class letterCombinations {private static final String[] KEYPAD {"", //0"", //1"abc", //2"…...
省略号和可变参数模板
本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...
从面试角度回答Android中ContentProvider启动原理
Android中ContentProvider原理的面试角度解析,分为已启动和未启动两种场景: 一、ContentProvider已启动的情况 1. 核心流程 触发条件:当其他组件(如Activity、Service)通过ContentR…...
