Nginx 配置允许指定 IP 段访问:从 192.168.1.1 到 192.168.1.124 及 /24 详解
Nginx 配置允许指定 IP 段访问一、需求与结论假设你要在 Nginx 中只允许192.168.1.1 ~ 192.168.1.124访问某个站点或目录。Nginx 的allow/deny指令只支持单个 IP例如192.168.1.10CIDR 网段例如192.168.1.0/24它不支持这种写法allow 192.168.1.1-192.168.1.124; # 错误所以必须把 IP 范围拆成多个 CIDR 段再按顺序配置。二、精确覆盖 192.168.1.1 ~ 192.168.1.124如果要求精确覆盖.1到.124可以这样拆server { listen 80; server_name example.com; location / { allow 192.168.1.1/32; # 1 allow 192.168.1.2/31; # 2-3 allow 192.168.1.4/30; # 4-7 allow 192.168.1.8/29; # 8-15 allow 192.168.1.16/28; # 16-31 allow 192.168.1.32/27; # 32-63 allow 192.168.1.64/27; # 64-95 allow 192.168.1.96/28; # 96-111 allow 192.168.1.112/29; # 112-119 allow 192.168.1.120/30; # 120-123 allow 192.168.1.124/32; # 124 deny all; root /var/www/html; index index.html; } }注意deny all;必须放在最后。Nginx 按顺序匹配命中第一条allow或deny就生效。三、简化写法如果.0、.125、.126、.127这些地址实际不会使用可以简化为allow 192.168.1.0/25; # 覆盖 192.168.1.0 ~ 192.168.1.127 deny all;这样写更简单但范围会比.1 ~ .124略宽会额外允许.0和.125 ~ .127。如果只是想允许整个192.168.1.x网段则可以用/24allow 192.168.1.0/24; deny all;四、/24 是多少/24是 CIDR 表示法表示子网掩码255.255.255.0以192.168.1.0/24为例项目值子网掩码255.255.255.0网络前缀24 位主机位8 位总 IP 数256 个IP 范围192.168.1.0 ~ 192.168.1.255传统可用主机254 个通常 .0 是网络地址.255 是广播地址在 Nginx 中allow 192.168.1.0/24; deny all;表示允许整个192.168.1.0 ~ 192.168.1.255访问。Nginx 层面会匹配这 256 个地址。五、只限制某个路径如果只想保护后台或管理目录location /admin/ { allow 192.168.1.0/25; deny all; proxy_pass http://127.0.0.1:8080; }这样只有指定 IP 段能访问/admin/其他 IP 返回 403。六、全局限制也可以放在http、server或location块中http { allow 192.168.1.0/25; deny all; }一般建议放在server或location中避免影响所有站点。七、反向代理后如何拿到真实 IP如果 Nginx 前面还有负载均衡、CDN 或反向代理$remote_addr拿到的可能是代理 IP而不是客户端真实 IP。这时需要配置真实 IP 模块set_real_ip_from 10.0.0.0/8; # 你信任的代理网段 real_ip_header X-Forwarded-For; real_ip_recursive on;配置后allow/deny才会按客户端真实 IP 生效。八、常见坑Nginx 不支持 IP 范围写法192.168.1.1-192.168.1.124必须拆成 CIDR。deny all;要放最后Nginx 按顺序匹配放错位置会导致规则不符合预期。403 Forbidden通常是被deny all;拦截检查 CIDR 是否写错。反向代理下 IP 不生效检查是否配置了set_real_ip_from、real_ip_header。修改后验证并重载nginx-tnginx-sreload九、CIDR 速查表CIDR可用地址数子网掩码/24256255.255.255.0/25128255.255.255.128/2664255.255.255.192/2732255.255.255.224/2816255.255.255.240/298255.255.255.248/304255.255.255.252/312255.255.255.254/321255.255.255.255十、总结Nginx 用allow/deny做 IP 访问控制。不支持192.168.1.1-192.168.1.124必须拆成 CIDR。精确覆盖.1 ~ .124可以用多个 CIDR 段。如果允许整个192.168.1.x直接写192.168.1.0/24。/24表示255.255.255.0范围是192.168.1.0 ~ 192.168.1.255。前面有代理时要配置真实 IP否则allow/deny可能失效。参考https://www.ecjson.com/article/206.html

相关新闻

奈奎斯特曲线绘制全攻略:三种方法从原理到实战

奈奎斯特曲线绘制全攻略:三种方法从原理到实战

奈奎斯特曲线(Nyquist plot)是我做控制系统分析和现场调试时用得最多的工具之一。它比Bode图更直观,一眼就能看出系统在临界点(-1, j0)附近的表现,但也是让很多初学者头疼的东西:频响、复数轨迹、稳定性判据混在一起&a…

2026/10/4 5:37:57 阅读更多 →
苹果CEO接班棋局:库克交棒前奏,特努斯为何成为头号人选

苹果CEO接班棋局:库克交棒前奏,特努斯为何成为头号人选

苹果CEO库克“倦勤”——这个说法最近在科技圈传得挺凶。如果你只看标题,可能会以为库克已经递交辞呈,其实完全不是这么回事。准确说,是苹果内部正在发生一场低调但清晰的“交棒前奏”,而站在候补位最前面的,就是负责硬…

2026/10/4 5:37:57 阅读更多 →
Claude Code 配置三件套:settings.json、CLAUDE.md 与 memory 的分工与最佳实践

Claude Code 配置三件套:settings.json、CLAUDE.md 与 memory 的分工与最佳实践

有人说 Claude Code 的配置很迷,改了半天 settings.json,下一句话还是听不懂项目背景。我一开始也是这个感觉,直到把三个配置体系分开看之后,整个思路就通了:settings.json 管的是“状态”,CLAUDE.md 管的是…

2026/10/4 5:37:57 阅读更多 →

最新新闻

【claude】cli工具安装后,把 settings 改到 TaoToken 的完整配置指南

【claude】cli工具安装后,把 settings 改到 TaoToken 的完整配置指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 15:38:10 阅读更多 →
插件系统开发实战:plugin.json配置、TypeScript SDK与CLI加载机制详解

插件系统开发实战:plugin.json配置、TypeScript SDK与CLI加载机制详解

1. 从“plugins”这个词说起:它到底在解决什么问题“plugins”这个词,放在今天的开发语境里,几乎已经成了一个绕不开的基础设施级概念。不管你是用 Cursor 写代码、用 Codex CLI 跑命令、还是在 VS Code 里装扩展,背后都离不开插件…

2026/10/4 15:38:10 阅读更多 →
插件开发实战:从plugin.json到加载失败排查的完整指南

插件开发实战:从plugin.json到加载失败排查的完整指南

1. 从“plugins”这个词说起:它到底在解决什么问题“plugins”这个词,放在今天的开发语境里,几乎已经成了一个绕不开的基础设施级概念。不管你是用 Cursor 写代码、用 Codex CLI 跑命令、还是在 VS Code 里装扩展,背后都离不开插件…

2026/10/4 15:38:10 阅读更多 →
2026年AIGC自检工具怎么选?毕业之家 vs 7款主流平台实测对比(附免费攻略)

2026年AIGC自检工具怎么选?毕业之家 vs 7款主流平台实测对比(附免费攻略)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 15:38:10 阅读更多 →
插件机制深度解析:从IAR到MusicFree从报错到实战

插件机制深度解析:从IAR到MusicFree从报错到实战

最近在翻搜索记录的时候,发现 plugins 这个词的热度比我想象的高得多。有人一头雾水地问 iar plugins 是干什么的,有人对着 failed to load plugins web boot: 2 entries did not activate 这种报错发呆,还有人刚拿到新设备就急着折腾 musicf…

2026/10/4 15:38:10 阅读更多 →
vscode使用插件KoroFileHeader添加注释,以及解决快捷键冲突详解(fileheader、cursorTip)

vscode使用插件KoroFileHeader添加注释,以及解决快捷键冲突详解(fileheader、cursorTip)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 15:37:10 阅读更多 →

日新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 11:40:45 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 9:43:54 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/3 9:42:36 阅读更多 →