2026 W33

面试结果 上周那场第二轮面试,周二有了结果:职位不匹配。 从 4 月离职到现在同事/朋友帮推过三家公司。一家给了 offer,薪资太低,拒了;一家没有下文;这一家前后聊了四个月,两个岗位都进了二面,都没有 offer. 这一家前后接触了一位 HR 和八位面试官。感觉得出来,有的是希望我加入的,也有的对我有疑虑。anyway,最终的结论是职位不匹配。 接下来先测试 enx 独立商业化的可行性:把功能做完、部署到 AWS、接上 Stripe 订阅,先在 YouTube 和 X 上推(因为只做了 google 账号登录),看能不能有几个付费订阅用户;跑不通的话就再找工作。 enx: 划词翻译 之前选中一个短语会走词典查询,而后端判定"包含空格就是句子",直接返回一句"句子翻译功能暂未开放",短语永远拿不到释义。现在改成:选中的如果是句子中间的几个词,侧边栏显示这个短语在整句里的含义。像 “hunt down emails”,三个词单看都认识,放进上下文里是什么意思才是要查的。 另外给三个翻译 provider 各补了单测。 enx:上线还差什么 周三花了一天,把 enx 距离上线还差哪些事情列了一遍,写成两份文档,一份是商业化设计,一份是任务清单。 先定义什么叫"上线":在生产环境上,真实用户可以注册、登录、订阅、使用 AI 翻译、被限流、退订,这条链路全部跑通,才谈得上开始推广。 顺序定成三步。先在现在这套 homelab 环境里把订阅功能做完、测通,不用等基础设施迁移——然后把跑通的功能迁到 AWS。最后在生产环境完整跑一遍端到端冒烟测试,作为发布门禁。 几条已经定下来的: 计算平台继续用 EC2,不上 ECS 或 EKS。EKS 控制面每月的固定成本,在验证付费意愿这个阶段不划算 上线时数据库继续用 SQLite,先不迁 PostgreSQL。现有链路已经跑过,上线门槛越低越好,数据库迁移不是订阅功能的前置依赖 域名不换。Cognito 的 callback、CORS、证书、扩展权限都已经围绕现在这个域名配好了 全部开源,包括计费规则,继续用 AGPL-3.0 最后一条想得比较久。最初担心闭源可以防止别人用 AI 抄产品,后来推翻了:闭源只能防直接复制代码,防不了照着功能用 AI 重写一遍,而后者才是真正的风险,源码可不可见对它基本无效。定价和免费额度这些数字,用户用一遍产品就能观察到,藏代码也藏不住。真正让我决定开源的是另一件事——找工作这条退路还在,一个有真实用户、有测试和 ADR 的开源项目本身就是求职作品集,这个价值闭源换不来,而闭源换来的那点"防护"本来就是假的。 局域网域名的一秒延迟 周五在准备 enx 的测试环境,发现局域网里的域名访问都带着一段很规律的延迟。查下来是 IPv6 的 DNS 问题。 ...

Created 16166-08-16 · Updated 16166-08-16 · 1 min · 176 words · -

Linux accept_ra 与网关转发场景

背景 accept_ra 是 Linux 内核里控制「是否接受路由器通告(Router Advertisement, RA)」的 sysctl。常见路径: /proc/sys/net/ipv6/conf/<interface>/accept_ra 取值含义(简化): 值 行为 0 忽略 RA,不自动配置地址/默认路由 1 接受 RA(主机模式) 2 接受 RA,即使接口已开启 forwarding(网关/路由器模式) 默认情况下,一旦接口 net.ipv6.conf.<iface>.forwarding=1,内核会把 accept_ra 视为 0,不再接受 RA。这是 RFC 4861 的意图:路由器不应把 RA 当主机来用。 解决什么问题 典型场景:一台 Linux 机器同时做网关转发,又需要从上游路由器拿 IPv6 前缀和默认路由。 例如 homelab 里的 VPN 客户端 192.168.50.61: 上游 OpenWrt 通过 RA 向 LAN 下发 ISP 委派的 /60 GUA 前缀和 ::/0 默认路由。 50.61 运行 tproxy,需要 ip_forward=1 转发 LAN / WireGuard 流量。 若 accept_ra=0 且 没有 userspace 网络栈(如 systemd-networkd)代为处理 RA,本机 IPv6 直连(VPN direct 出站)可能 Network is unreachable。 accept_ra=2 的作用:在开启 IP 转发的同时,仍接受上游 RA,让网关主机也能获得 GUA 和默认路由。 ...

Created 29296-05-29 · Updated 29296-05-29 · 2 min · 265 words · -

IPv6 地址类型与配置

GUA(Global Unicast Address,全局单播地址) GUA 是 IPv6 中可在公网上路由的地址类型,相当于 IPv4 的公网 IP。 地址格式 GUA 地址以 2000::/3 开头,即前 3 位为 001,实际分配中几乎所有 GUA 地址都以 2 或 3 开头。 | 48 位全局路由前缀 | 16 位子网 ID | 64 位接口 ID | 全局路由前缀(Global Routing Prefix):由 ISP 或 RIR 分配,用于全球路由 子网 ID(Subnet ID):由站点管理员划分子网 接口 ID(Interface ID):标识同一子网内的主机,通常通过 SLAAC(EUI-64)或随机生成 典型示例 2001:0db8:85a3:0000:0000:8a2e:0370:7334 其中 2001:0db8::/32 是文档示例专用前缀(RFC 3849),不会在公网上实际路由。 与 IPv4 公网 IP 的对比 特性 IPv4 公网 IP IPv6 GUA 全球可路由 ✓ ✓ 地址数量 约 43 亿 约 $3.4 \times 10^{38}$ NAT 需求 通常需要 通常不需要 分配方式 ISP 分配(动态/静态) ISP 分配前缀,设备自动生成 常见 GUA 前缀段 ...

Created 9096-05-09 · Updated 9096-05-09 · 3 min · 530 words · -

ping command, fping

ping command, fping ping6 ping6 是用于测试 IPv6 网络连通性的工具,功能与 ping 相同,但基于 ICMPv6 协议。 使用 ICMPv6 Echo Request/Reply 报文 目标地址为 IPv6 地址(如 ::1、2001:db8::1)或支持 IPv6 的域名 在现代 Linux 系统中,ping 已整合 IPv6 支持,可直接用 ping -6 替代 ping6 # 测试本地 IPv6 回环 ping6 ::1 # 等价写法(现代系统) ping -6 ::1 # ping 链路本地地址时需指定网络接口(fe80:: 开头的地址必须指定接口) ping6 -I eth0 fe80::1 # 指定发送次数 ping6 -c 4 2001:4860:4860::8888 主要选项与 ping 基本相同,如 -c(次数)、-i(间隔)、-s(包大小)、-I(指定接口)。 options -s<数据包大小>:设置数据包的大小; -M hint 设置MTU(最大传输单元)分片策略。 可设置为: ‘do’:禁止分片,即使包被丢弃; ‘want’:当包过大时分片; ‘dont’:不设置分片标志(DF flag); install # ubuntu apt install iputils-ping # archlinux install fping pacman -S fping windows 长 ping ping 192.168.1.100 -t 指定网络设备 ping -c 1 -I veth0 192.168.3.102 同时显示统计信息 fping -l google.com 什么是 ping PING (Packet Internet Grope),因特网包探索器,用于测试网络连接量的程序。Ping发送一个ICMP回声请求消息给目的地并报告是否收到所希望的ICMP回声应答。 ...

Created 8086-05-08 · Updated 8086-05-08 · 2 min · 382 words · -