工作 VPN 网关能看出你身在何处到什么程度
雇主的网关看到的是连接本身的源地址,而不是网站看到的出口地址。这最多只能支撑粗略的位置判断。
连上工作 VPN 之后,网站看到的地址并不是工作网关在你连接时所看到的那个地址。网关接受来自你笔记本所在任意网络的入站隧道,而这一源地址在任何隧道流量出现之前就已对它可见。浏览器随后报告企业出口,并不会抹掉早先的那次观测,因为两者观测的是不同的东西。分清这两者,关于雇主能推断什么、不能推断什么的争论,大半就可以解决。
两个地址,两种不同的观测
机制是套接字,不是政策。客户端打开隧道时,会从本地地址向网关的公网地址发送数据包,网关内核记录下这条流的来源。那个来源就是当时服务商分配给该连接的网络端点。
在家用路由器后面,来源是 NAT 之后路由器的公网地址。在移动网络上,它可能是多名用户同时共享的运营商级 NAT 地址,这就是两个毫不相干的人会显得来自同一地点的原因。在企业访客网络上,来源就是该网络的出口。无论哪种情况,网关都知道了地址、端口和时间戳,而地址属于网络运营商,不属于某个人。
网关实际记录了什么
之后记录什么,与技术上能看到什么,是两个问题。网关可以记录连接、认证身份和分配的隧道地址,也可以除会话状态之外几乎什么都不记。保留多久、是否导出到 SIEM、是否与账号关联,都是部署决策,没有一项能从源地址可见这个事实推出来。
把可见性和留存当作两个维度。服务可以什么都看得见却什么都不留,也可以只看到一点却全部转发出去。
实际后果是:你无法根据自己安装的客户端推断雇主的记录。要问服务被配置成收集什么、保存多久,并且预期答案是一份政策文件,而不是技术保证。还值得把 VPN 网关与受管设备上的其他部分分开看,因为终端软件有自己的能力和自己的记录。个人 VPN 改变的是一条路由;它改变不了机器上已经在运行的软件能观测到什么。
IP 数据库能说什么、不能说什么
IP 地理定位数据库拿到这个地址后返回若干字段:国家、地区、城市、邮编、纬度和经度,厂商提供时还有精度半径。这些字段是由注册数据、网络拓扑和实测延迟推导出的估计值,而且在不同层级上的退化方式不同。国家层面的答案可能很可靠,城市层面的答案却只是猜测。
MaxMind 自己的精度说明对这里的关键区别讲得很明确:定位一台 VPN 服务器不等于定位它的用户,数据也无法识别某个家庭、某个人或某个街道地址。要读精度半径,以及产品在哪些地方给出置信度字段;数据缺失就当缺失,不要当成默认值。 地图上的图钉是呈现方式的选择,不是测量。注册记录和反向 DNS 是另一类证据:whois 203.0.113.5 告诉你哪个运营商持有该分配,dig +short -x 203.0.113.5 告诉你运营商给它起了什么名字,而两者都不是关于某人身在何处的陈述。
不可互换的记录
这件事两头都切。与获批地区相符的估计不能证明在场。而不相符本身也不能证明欺骗。
只凭一次查询做的远程办公审查,回答的是另一个问题。它需要背景:安排允许哪些地点、当事人申报了什么、其他证据是否一致。那是有技术输入的管理流程,不是技术裁决。
组织可能持有的其他记录,与源地址不可互换。时区设置是任何人都能改的设备偏好;账号事件记录的是发生过一次会话,而不是在哪里;终端软件给出的设备位置读数,是另一种传感器,有不同的权限和不同的误差模式。假定每个雇主都收集全部这些记录,和假定一条都不收集一样错误。有用的纪律是:在把某条记录当作任何事情的证据之前,先说清它是哪条记录、归谁管、误差模式如何。
对工作安排意味着什么
就你自己的安排而言,该问的是组织收集什么、允许哪些工作地点。这是来自业务两个不同部门的两个答案。
源 IP 的显示无法裁定在某地工作的许可,改一条路由也不能代替把安排谈妥。政策不清楚时,有产出的做法是去问,而不是优化网络路径。技术绕行往往恰好产出那份看起来像在隐瞒的记录。
站得住的技术陈述很窄,也值得保持这么窄:网关观测到入站连接的网络来源,地理定位数据库可以为该来源估计一个位置,而任何关于某人物理位置的断言都需要这两者之外的证据。 MaxMind 的精度说明是这些估计能支撑什么的参照。再往后的一切,都是穿着技术外衣的政策问题。