150行Node.js實(shí)現(xiàn)的dns代理工具
工具地址:github.com/Yi-love/dns…
安裝: npm install dns-proxy-server -g
這個我覺得應(yīng)該還是挺實(shí)用的一個工具。開發(fā)過程中我們需要配置IP來訪問測試環(huán)境域名。
使用電腦開發(fā)測試還好,直接使用Switch hosts! , 修改域名IP即可訪問特定IP的域名網(wǎng)站。
那么如何在手機(jī)上也盡可能容易的訪問到測試環(huán)境呢?
手機(jī)如何訪問到內(nèi)部網(wǎng)絡(luò)特定IP域名?
手機(jī)要訪問到測試環(huán)境的域名,我們需要做的就是建立一個代理服務(wù),然后手機(jī)通過代理服務(wù)訪問測試環(huán)境域名。
常見的代理方式:
- 請求代理
- DNS代理
請求代理
無非就是作為一個中間人,代替手機(jī)訪問測試環(huán)境域名,然后將請求結(jié)果返回手機(jī)。如果代理的是http請求還好,遇到https請求代理的話可以不是那么靈驗(yàn)了。雖然fiddler可以配置證書代理 https 請求,但是實(shí)際效果并不如人意,失敗率還挺高的。
DNS代理
DNS代理說小一點(diǎn)就是個DNS解析服務(wù),說大了就是個域名系統(tǒng)。
DNS代理只會告訴手機(jī)當(dāng)前訪問域名在哪個IP上。之后DNS代理訪問并不會參與手機(jī)和測試環(huán)境域名直接的請求代理。
所以說:請求代理和DNS代理最大的區(qū)別就在這里,請求代理會參與請求,DNS不會參與。
為什么需要DNS代理
當(dāng)前app里面有很多的內(nèi)嵌頁面(都是https請求), 使用請求代理,可能會App都登陸不了,這個適合選擇DNS更合適。
但是DNS代理是看不見請求數(shù)據(jù)的,所以在需要抓包的場景,DNS無法做到。
使用 dns-proxy-server 服務(wù)
dns-proxy-server 是使用Node.js純原生編寫。使用非常方便。非常適合前端在手機(jī)app里預(yù)覽內(nèi)嵌頁面。
安裝:
npm install dns-proxy-server -g
使用:
dnsproxy[ ip[ port]]
案例: dnsproxy 172.28.24.1
mac用戶需要使用 sudo dnsproxy [ip [port]]
方式。因?yàn)镈NS綁定的是機(jī)器53端口。
配合 Switch hosts! 爽歪歪?。。?!。
相關(guān)文章
Node.js?內(nèi)置模塊fs文件系統(tǒng)操作示例詳解
這篇文章主要為大家介紹了Node.js?內(nèi)置模塊fs文件系統(tǒng)操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02Express服務(wù)器端代碼熱加載的實(shí)現(xiàn)代碼
這篇文章主要介紹了Express服務(wù)器端代碼熱加載的實(shí)現(xiàn),文中通過代碼示例給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-01-01nodejs服務(wù)搭建教程 nodejs訪問本地站點(diǎn)文件
這篇文章主要為大家詳細(xì)介紹了nodejs服務(wù)搭建教程,訪問本地站點(diǎn)文件,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04如何在node環(huán)境實(shí)現(xiàn)“get數(shù)據(jù)解析”代碼實(shí)例
這篇文章主要介紹了如何在node環(huán)境實(shí)現(xiàn)“get數(shù)據(jù)解析”代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-07-07nodejs轉(zhuǎn)換音頻文件格式并壓縮導(dǎo)出zip格式(vscode語音插件開發(fā))
FFmpeg是一套開源的音視頻處理工具,通俗地講,可以對音視頻文件進(jìn)行剪切、拼接、水印、轉(zhuǎn)碼等處理,這篇文章主要介紹了nodejs轉(zhuǎn)換音頻文件格式并壓縮導(dǎo)出zip格式(vscode語音插件開發(fā)),需要的朋友可以參考下2023-05-05