首页 互联网 换一个思维解决问题:希望在转角

换一个思维解决问题:希望在转角

前段时间困扰我的一个网络拦截请求的问题,终于被巧妙地解决了。

我之前开发了一个net proxy,专门用于对特殊网络环境的模拟,以此测试一个工作中需要测试的软件。简单来说就是用mitmproxy实现一个网络流量代理服务,对网络请求域名进行拦截功能,只有指定的一些域名可以正常访问,其他域名访问就直接返回403。

本来功能都实现得很好,用起来非常丝滑。但后面因为工作网络有了新的要求,必须用工作的虚拟网络通道(简称SXNN)。

在网络通道连接之后,它直接接管了路由,导致流量绕过本地运行的mitmproxy,我的域名拦截就无效了。

而如果先开启net proxy,则又无法顺利连接SXNN的网络服务。

后面想了很多办法,比如通过修改net proxy项目代码,尝试让流量还是走代理拦截。基本把AI服务都用了个遍,vibe coding了2个月,依然无法解决问题。
而且因为涉及了工作要求,我也不能对SXNN的客户端进行改造,比如把网络改为Split Tunnel模式。也就是让指定域名/IP 走本地网络(从而经过 mitmproxy),其他走SXNN。
而且我用来进行对特殊网络环境的模拟的应用也无法再Docker容器里面进行使用,这里面涉及到了更复杂的构建工作以及测试。

AI甚至建议我在连接SXNN之后,把net proxy设置为上游代理,通过一系列复杂的网络命令来实现。我尝试了一下,并没有让流量走mitmproxy。

我在多次的失败之下也短时间放弃了研究,直到这两天在山中修行,夜间无事打开电脑继续和AI进行探讨。

硬碰硬是走不下去的,涉及到底层网络协议和工作安全性的限制,注定是一个死胡同。我需要调整思路,如果先A后B不行,那么先B再A呢,是否就能走出新的路?

我突然想到,如果我没法在连上SXNN之后让mitmproxy成功拦截网络请求,那为什么不先运行net proxy,让网络流量先走我本地的proxy,然后再去接入SXNN。

我唯一要实现的就是,在net proxy运行的条件下,让SXNN服务能连接上个网络即可。于是通过net proxy的网络请求日志,我发现了7个需要加入白名单的域名,它们是用来连接SXNN网络的中间服务域名。

当我把这7个域名加到白名单后,终于顺利实现了SXNN网络连接和net proxy并存了,我的代理服务终于又可以正常工作了。

从这次思维改变,我把一个困扰我长达三个的难题解决了,我内心是激动的,这是多年工作之后很少遇到的顿悟时刻。

有时候困难并没有那么大,只是我们给自己加了太多预设条件和“心墙”,推不倒南墙,但希望在转角。

站星网

前段时间困扰我的一个网络拦截请求的问题,终于被巧妙地解决了。我之前开发了一个net proxy,专门用于对特..

为您推荐

《程序员的底层思维》读后感

一、 什么是“底层思维”?超越表面技法: “底层思维”不是指具体的编程技巧或某个框架的使用方法。它指的是程序员在面对问题时所依赖的那些基础的、普遍适用的认知模式和原则。打个比方: 就像盖房子,表面看是漂..

比贫穷更可怕的,是你的穷人思维

有个朋友前段时间刚换了工作,钱多了,但离家却稍微有点远了。最近跟她聊天,她一直抱怨自己工作日都跟打仗似的,每天上下班挤公交换地铁,一早得送孩子上学,下班之后,还得买菜做饭,等忙活完安顿好,就已经到了晚..

架构与思维:微服务架构的思想本质

我们为什么需要微服务架构,它一定是为了解决我们某些问题才出现了。这篇文章我们讨论下微服务架构模式所解决的问题,带来的挑战,以及他的核心思想本质。1 早期的服务架构上图是一个典型的服务分层架构:Client: ..

架构与思维:秒杀和竞拍的业务架构,永不过时的话题

1 互联网架构越来越复杂?为啥感觉互联网架构越来越复杂了,早期我们的系统,可能也就那么少部分人使用,大都是一些后台管理系统。所以不用考虑很多东西,比如:流量少,无需考虑并发问题数据少,不用考虑什么索引优..

代码中的解耦思维

解耦思维是一种设计和思考问题的方法,旨在将复杂的系统或问题拆分为独立的组件或子问题,以降低系统的耦合度和提高可扩展性。以下是一些关于解耦思维的要点:1. 模块化设计:将系统划分为多个模块或组件,每个模块..

发表回复

返回顶部

微信分享

微信分享二维码

扫描二维码分享到微信或朋友圈

链接已复制
蜂鸟影院2048影视资源论坛熊猫影视河马影视星辰影视萝卜影院八哥电影网人人看电影无忧影视网橙子影视网叮当影视网天天影视网青青影视网电影天堂开心追剧网西瓜影院麻花影视网70影视网年钻网茶小舍电影藏影堂新神州影域煮酒观影体积影视爱看影院星光电影至尊影院极影公社超清视界