150行Node.js實現的dns代理工具
工具地址:github.com/Yi-love/dns…
安裝: npm install dns-proxy-server -g
這個我覺得應該還是挺實用的一個工具。開發(fā)過程中我們需要配置IP來訪問測試環(huán)境域名。
使用電腦開發(fā)測試還好,直接使用Switch hosts! , 修改域名IP即可訪問特定IP的域名網站。
那么如何在手機上也盡可能容易的訪問到測試環(huán)境呢?
手機如何訪問到內部網絡特定IP域名?
手機要訪問到測試環(huán)境的域名,我們需要做的就是建立一個代理服務,然后手機通過代理服務訪問測試環(huán)境域名。
常見的代理方式:
- 請求代理
- DNS代理
請求代理
無非就是作為一個中間人,代替手機訪問測試環(huán)境域名,然后將請求結果返回手機。如果代理的是http請求還好,遇到https請求代理的話可以不是那么靈驗了。雖然fiddler可以配置證書代理 https 請求,但是實際效果并不如人意,失敗率還挺高的。
DNS代理
DNS代理說小一點就是個DNS解析服務,說大了就是個域名系統(tǒng)。
DNS代理只會告訴手機當前訪問域名在哪個IP上。之后DNS代理訪問并不會參與手機和測試環(huán)境域名直接的請求代理。
所以說:請求代理和DNS代理最大的區(qū)別就在這里,請求代理會參與請求,DNS不會參與。
為什么需要DNS代理
當前app里面有很多的內嵌頁面(都是https請求), 使用請求代理,可能會App都登陸不了,這個適合選擇DNS更合適。
但是DNS代理是看不見請求數據的,所以在需要抓包的場景,DNS無法做到。
使用 dns-proxy-server 服務
dns-proxy-server 是使用Node.js純原生編寫。使用非常方便。非常適合前端在手機app里預覽內嵌頁面。
安裝:
npm install dns-proxy-server -g
使用:
dnsproxy[ ip[ port]]
案例: dnsproxy 172.28.24.1

mac用戶需要使用 sudo dnsproxy [ip [port]] 方式。因為DNS綁定的是機器53端口。
配合 Switch hosts! 爽歪歪?。。?!。
相關文章
Node.js?內置模塊fs文件系統(tǒng)操作示例詳解
這篇文章主要為大家介紹了Node.js?內置模塊fs文件系統(tǒng)操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-02-02
如何在node環(huán)境實現“get數據解析”代碼實例
這篇文章主要介紹了如何在node環(huán)境實現“get數據解析”代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-07-07
nodejs轉換音頻文件格式并壓縮導出zip格式(vscode語音插件開發(fā))
FFmpeg是一套開源的音視頻處理工具,通俗地講,可以對音視頻文件進行剪切、拼接、水印、轉碼等處理,這篇文章主要介紹了nodejs轉換音頻文件格式并壓縮導出zip格式(vscode語音插件開發(fā)),需要的朋友可以參考下2023-05-05

