文章
101
标签
124
分类
7
首页
统计
  • 标签
  • 分类
  • 归档
关于
程序员暮狐
搜索
首页
统计
  • 标签
  • 分类
  • 归档
关于

程序员暮狐

Linux企业级内部DNS与VPN集成方案
发表于2026-10-25|系统运维
在Linux服务器上为企业级应用实现内部域名解析,核心思路是:搭建一个独立的内部DNS服务器,然后通过VPN的配置,将这个DNS服务器的地址“推送”给所有连接到VPN的客户端。这样,无论客户端在哪里,只要连上VPN,就能自动使用内部DNS来解析内部域名,无需修改每台机器的hosts文件。 企业级内部DNS的实现方式企业级场景下,通常不会在每台机器上手动维护hosts,也不会依赖路由器,而是会部署一个专用的DNS服务器软件。主流的方案有: **BIND (named)**:功能最全面、最稳定,是构建权威DNS服务器的行业标准,适合复杂的企业环境。它支持视图(View)、区域传送、DNSSEC等高级功能。 Unbound:一款注重安全、性能和隐私的递归与缓存DNS服务器,配置相对现代,适合作为生产环境的解析器。 dnsmasq:轻量易用,同时提供DNS和DHCP功能。 CoreDNS:在Kubernetes生态中非常流行,插件化架构灵活,也适合作为通用的内部DNS服务器。 内网机器指向dnsDNS服务器配置完成后,还需要让内网把查询发给它。 使用 systemd-resolved...
企业级内网DNS实战:用 dnsmasq 搭个内网 DNS
发表于2026-10-25|系统运维
内网服务一多,Jenkins、Git、测试环境各一个 IP,开发运维各记一套,换台机器还得重新配。 与其继续维护 hosts,不如在内网放一台自己的 DNS:内部域名统一解析,外部域名缓存转发,客户端只改一个 DNS 地址。dnsmasq 轻量、配置直观,很适合干这件事。 先写 dnsmasq 配置先在宿主机上建一个工作目录,把配置文件和 compose 文件放在一起,后面改起来方便。 12mkdir ~/dnsmasq-docker && cd ~/dnsmasq-dockernano dnsmasq.conf 配置文件可以这样写: 123456789101112131415161718# 监听所有地址(容器内 0.0.0.0 才能被外部访问)listen-address=0.0.0.0bind-interfacesport=53# 不读取容器内的 /etc/resolv.conf,避免行为不可控no-resolvserver=223.5.5.5server=119.29.29.29# 你的内部域名(以 internal.com 为例)local=/inter...
一次 Maven 版本升级引发的构建失败:传递依赖与 reactor 排序
发表于2026-10-09|后端
项目版本号从 1.0.19 升到 1.0.20,全量构建,结果红了。报错只有一句,落在 nebula-client 模块: 12345[ERROR] Could not resolve dependencies for ...:nebula-client:jar:1.0.20-SNAPSHOT[ERROR] dependency: ...:nebula-proto-conf:jar:1.0.20-SNAPSHOT (compile)[ERROR] ... was not found ... during a previous attempt.[ERROR] This failure was cached ... not reattempted until the[ERROR] update interval ... has elapsed 这个报错最迷惑的地方在于:nebula-proto-conf 明明是本项目自己的一个模块,源码就在同一个工程里。自己的模块,为什么会找不到,还要跑去私有仓库拉?更离谱的是,报错的 nebula-client 的 pom...
开了代理 WSL 里还不生效?写个后台脚本盯着它
发表于2026-09-22|系统运维
用 WSL 开发的人,大概率都遇到过这个破事:Windows 上 Clash 一开,WSL 里的终端该连不上还是连不上,就算开启了网络镜像模式以及自动代理也非得 wsl --shutdown 重启一遍,代理才能够生效,一天折腾几回,心态真的会崩。 后来搞明白了,autoProxy 这东西只在 WSL 启动的那一瞬间读一次 Windows 的代理设置,它不是动态同步,就是个启动快照,只要 Clash 比 WSL 后启动,WSL 里就还是无代理状态。 那怎么办?思路很简单:自己写个后台小脚本,盯着 Clash 的端口,通了就把代理环境变量写到一个文件里,然后让 shell 自己去读。这样不管 Clash 什么时候开,WSL 这边都能跟上。 前提1. WSL 是否启用 systemd 编辑 /etc/wsl.conf: 12[boot]systemd=true 改完在 PowerShell 里 wsl --shutdown 重启一次。 **2. Clash Verge 的 Allow LAN 是否打开 设置 → Clash 设置 → 允许局域网连接,打开。 3. Windows 防火...
WSL开发网络模式选择:NAT与镜像模式详解
发表于2026-09-14|系统运维
如果你在 Windows 上用 WSL开发,大概率经历过这些瞬间: 在 WSL 里跑了个服务,Windows 浏览器用 localhost 死活打不开;手机想连电脑调试个页面,发现局域网根本访问不到;更别提公司 VPN 一开,WSL 里的 apt 或 npm 就各种域名解析失败,/etc/resolv.conf 改来改去,重启一次又白干。 这些问题,根子都在 WSL 2 默认的 NAT 网络模式上。 NAT 模式:能用,但像个网络孤岛WSL默认走 NAT,你可以把它理解成一台独立的小虚拟机,有自己的 IP。Windows 主机对它来说,相当于外部服务器。 这种设计不是不能用,但代价挺明显: WSL 里没法直接用 127.0.0.1 访问 Windows 上的服务; 局域网里的手机、另一台电脑,想访问 WSL 里的服务?得手动配端口转发,而且 WSL 的 IP 每次重启还可能变; DNS 解析特别容易抽风,尤其是挂 VPN 或连公司网络时,/etc/resolv.conf 经常莫名其妙失效; 开发时服务跑在 WSL 里,对外暴露的是虚拟机的 IP,公司网络或局域网内通信很容易出问...
WSL自定义路径安装Ubuntu
发表于2026-09-14|系统运维
方式一:使用 --location 参数(适用于较新版本)以管理员身份打开 PowerShell,执行安装命令,格式如下: 1wsl --install -d <发行版名称> --location "<目标路径>" 例如,要将 Ubuntu 安装到 D:\WSL\Ubuntu,命令就是: 1wsl --install -d Ubuntu --location "D:\WSL\Ubuntu" 方式二:迁移已安装的发行版如果已经安装到了 C 盘,可以通过导出 -> 注销 -> 导入的流程迁移。 关闭 WSL,并导出备份 12wsl --shutdownwsl --export Ubuntu D:\backup\ubuntu.tar 注销原实例(此操作会删除 C 盘数据,请务必确认上一步成功): 1wsl --unregister Ubuntu 创建新目录并导入: 12mkdir D:\WSL\Ubuntuwsl --import Ubuntu D:\WSL\Ubuntu D:\backup...
把Git Bash的提示符搬到Linux上,用了就回不去了
发表于2026-09-08|系统运维
用过Git Bash的朋友应该都有同感——那个默认的提示符,简直是为一眼看清自己在哪里量身定做的。用户名、主机名、当前目录,颜色分明,换行整齐,尤其是目录层级一多,/home/project/src/module/feature 这种长串也能一目了然,不会和前面的信息挤成一团。 可一旦切到Linux原生终端(比如Ubuntu的bash),画风突变——默认的 \u@\h:\w$ 虽然简洁,但路径一深,提示符就长到占满半行,看着累,复制输出时还容易把路径和命令搞混。 我一直在想要是能把Git Bash那套提示符搬到Linux上就好了。最近折腾了一下,发现其实一行配置就搞定,而且完全不用装额外工具。 核心操作编辑 ~/.bashrc,在文件末尾追加: 1export PS1='\[\033[32m\]\u@\h \[\033[35m\]$MSYSTEM \[\033[33m\]\w\[\033[0m\]\n\$ ' 保存退出后,执行: 1source ~/.bashrc 效果对比 能够明显看到,命令行以独立成行的方式呈现,有助于将注意力聚焦于命令本身,有效规避...
Git多账户配置终极指南
发表于2026-09-08|系统运维
同一台电脑上要连GitHub、公司GitLab,还要连其他Git仓库,账户来回切,推代码总报错,另一件烦事:明明在公司仓库提交,结果commit记录里显示的是个人邮箱,被同事和领导围观。 如果你也遇到这些问题,别急着删.ssh文件夹重来,这篇文章能帮你一次性搞定。 SSH密钥多账户管理最靠谱的方式,没有之一。 生成不同用途的密钥对别偷懒用同一个密钥,给每个平台单独生成: 12345# GitHub专用ssh-keygen -t ed25519 -C "your_email@github.com" -f ~/.ssh/id_ed25519_github# 公司GitLab专用ssh-keygen -t ed25519 -C "your_email@company.com" -f ~/.ssh/id_ed25519_gitlab 把公钥加到对应的平台这个不用多说,打开GitHub/GitLab的设置页面,找到SSH Keys,把.pub文件的内容完整复制进去。 注意:一定要复制.pub结尾的文件,而不是私钥文件。 配置SSH客户端编...
把字段从 TIMESTAMP 改成 DATETIME,线上直接炸了!
发表于2026-09-02|后端
事发:一个莫名其妙的空指针周五下午,我正准备摸鱼等下班,测试同学找过来:库存保存接口报错了,你赶紧看看!我打开日志一看,好家伙,一片红色: 12java.sql.SQLException: Field 'create_time' doesn't have a default valueat com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException 嗯?我明明在数据库里给 create_time 设置了 DEFAULT CURRENT_TIMESTAMP,怎么会说没有默认值呢? 而且这段代码上线半年了,一直跑得好好的。仔细一看发版记录,这次只改了一个东西:把 create_time 的字段类型从 TIMESTAMP 改成了 DATETIME。 就这?就改了个字段类型就出问题了? 先看执行的语句,create_time和update_time都设置了默认值,理论上应该不会有问题才对? 1234## MySQL 8.0ALTER TABLE t_inventory MODIF...
自建网盘不香吗?Docker 一键部署 Seafile ,告别会员费,你的文件你做主!
发表于2026-08-19|系统运维
你是不是也受够了百度网盘的限速?受够了阿里云盘的容量焦虑?受够了各种网盘动不动就”请开通会员享受更快下载”? 今天给你安利一款 Docker 一键部署的开源文件同步神器——Seafile,不用花一分钱,文件存在自己服务器上,同步速度快到飞起,功能还贼强大! 🖥️ 什么是 Seafile?Seafile 是一款开源的企业级文件同步与共享平台,诞生于 2012 年,经过十多年的打磨,已成为全球领先的开源文件同步解决方案之一。 它的核心定位极其专注:高性能的文件同步。简单来说,它就是属于你自己的私人网盘——速度更快、数据完全由你掌控、还没有任何限速。 Seafile 社区版完全免费开源,个人用户功能绰绰有余。全平台客户端支持 Windows、macOS、Linux、iOS、Android,随时随地访问你的文件。 ⚡ Seafile 的核心优势1️⃣ 块级同步——快如闪电这是 Seafile 最核心的技术优势。大多数同步工具采用的是文件级同步——文件有一丁点改动,就得把整个文件重新上传一遍。而 Seafile 采用的是块级同步——只传输文件中真正发生变化的那一小部分。 打个比方:你修改...
AI Agent 来了,认证该怎么做?Logto 用 MCP 协议给出了答案
发表于2026-08-12|后端
做过 AI 应用开发的都知道,用户登录不难,难的是让 AI Agent 替用户干活。 传统的 OAuth 2.0 是给人设计的——弹窗、点击授权、拿 Code。换成异步的 AI Agent,这套流程根本走不通。 当大家都在卷大模型和 RAG 时,“Agent 如何安全地调用 API”成了被低估的暗坑。Logto 用 MCP 协议给出了一个漂亮的答案。 Logto 是一个开源的认证与授权基础设施,基于 OIDC 和 OAuth 2.1 标准,内置多租户、企业 SSO 和 RBAC。截至目前,它在 GitHub 上已获得超过 1.4 万 Star。 先解决 AI Agent 最头疼的“委托授权”AI 应用带来的根本性问题是:调用 API 的不再只是“用户”,还有“AI Agent”。 当 Agent 需要代表用户访问数据时,传统的 OAuth 授权流程(每次都要用户点一下)就不适用了——你不能让 Agent 每调用一次就让用户授权一次。Logto 的 MCP 协议支持和 Secret Vault 就是为了解决这个“代理授权”问题。 Logto 的 MCP 方案怎么工作?一次授权,Ag...
告别命令行搓VPN!Pritunl 一键搞定OpenVPN和WireGuard,5分钟上线
发表于2026-08-10|软件工具
VPN已经成为企业和开发者的刚需,但生成证书、更改配置、配置下发这些高频操作,全靠命令行手搓,效率低还容易出错。更麻烦的是,OpenVPN和WireGuard各有千秋——前者成熟稳定但配置繁琐,后者性能强劲却缺少管理界面,选哪个都纠结。 Pritunl 就是来终结这种痛苦的。它是一款开源的企业级VPN管理平台,提供直观的图形化Web界面,将服务端配置、用户管理、证书吊销、配置下发等操作全部简化到“点点鼠标”就能完成。最香的是,它同时支持OpenVPN和WireGuard两种协议——追求稳定选OpenVPN,追求速度选WireGuard,一套系统两种体验,小孩子才做选择,成年人全都要。 Docker Compose 极简部署新建项目目录,写入以下内容: 123456789101112131415services: pritunl: image: ghcr.io/jippi/docker-pritunl:latest container_name: pritunl-server privileged: true ports: - "443...
12…9
程序员暮狐
君子以顺德,积小以高大。
文章
101
标签
124
分类
7
Follow Me
公告
程序员暮狐
分享技术干货,记录成长历程。扫码关注,获取更多技术文章和独家内容。
最新文章
Linux企业级内部DNS与VPN集成方案2026-10-25
企业级内网DNS实战:用 dnsmasq 搭个内网 DNS2026-10-25
一次 Maven 版本升级引发的构建失败:传递依赖与 reactor 排序2026-10-09
开了代理 WSL 里还不生效?写个后台脚本盯着它2026-09-22
WSL开发网络模式选择:NAT与镜像模式详解2026-09-14
分类
  • 前端7
  • 后端26
  • 思维模型3
  • 系统运维32
  • 计算机基础3
  • 软件工具24
  • 软件设计6
标签
计算机结构 冯·诺依曼 Redis Beszel 文件同步 Jenkins SNAT DNS AI工程 递归 管理平台 死锁 权限管理 Maven 序列化 URL优化 责任链 Claude Code logrotate 网络模式 Nginx 网络配置 编码规范 AI编码 配置管理 设计模式 服务器运维 Keycloak 网络安全 iptables WireGuard Zookeeper 进制转换 笔记管理 服务发现 IO模型 WSL 栈溢出 后端 Nacos
归档
  • 十月 2026 3
  • 九月 2026 6
  • 八月 2026 10
  • 七月 2026 12
  • 五月 2026 2
  • 四月 2026 15
  • 三月 2026 23
  • 二月 2026 1
网站信息
文章数目 :
101
本站访客数 :
本站总浏览量 :
最后更新时间 :
© 2025 - 2026 By 程序员暮狐框架 Hexo 7.3.0|主题 Butterfly 5.5.4
鲁ICP备2026017338号-1
搜索
数据加载中