|
| 1 | +## 用tcpdump抓包了解程序到底在访问什么URL, 科学上网/翻墙场景 |
| 2 | + |
| 3 | +### 作者 |
| 4 | +digoal |
| 5 | + |
| 6 | +### 日期 |
| 7 | +2024-11-16 |
| 8 | + |
| 9 | +### 标签 |
| 10 | +PostgreSQL , PolarDB , DuckDB , 科学上网 |
| 11 | + |
| 12 | +---- |
| 13 | + |
| 14 | +## 背景 |
| 15 | +http代理和socks5代理可以很好的解决某些网站无法访问的问题, 但是前提是你得知道应用到底在访问什么网站? 总不能把所有流量都打到代理, 你要访问国内的网站也打到代理那不是要慢死? |
| 16 | + |
| 17 | +所以可以配置pac文件, 让某些地址走代理, 其他的走本地. 详见: |
| 18 | +- [《macOS 通过“oversea region ECS和ssh隧道转发代理请求” OR “openVPN” 提升github等访问体验 - chrome Proxy SwitchyOmega , cli ... 可用》](../202310/20231029_01.md) |
| 19 | +- [《iphone/macOS PC 使用nginx/httpd配置proxy.pac共享socks5 代理加速github网络访问》](../202405/20240505_02.md) |
| 20 | +- [《用宿主机代理(all_proxy http_proxy https_proxy)来解决docker build或docker 容器中github clone无法访问的问题》](../202403/20240327_01.md) |
| 21 | + |
| 22 | +## 如何知道程序访问什么网站失败了呢? |
| 23 | +如果是chrome浏览器就比较方便, 装个SwitchyOmega插件就可以了, 其他程序呢? |
| 24 | + |
| 25 | +下面给个例子, 刚好在弄使用 DiffusionBee 文生图的工具时, 需要先下载diffusion模型, 但是下载失败了, 不用说, 被墙了. |
| 26 | +- [《如何使用stable diffusion在Apple Silicon芯片的Mac上画图(GPU加速)- 文生图text-to-image》](../202411/20241115_02.md) |
| 27 | + |
| 28 | + |
| 29 | + |
| 30 | +但DiffusionBee到底要访问什么URL呢? 可以用tcpdump工具抓包看看 |
| 31 | + |
| 32 | +1、首先要知道这个程序的进程名 |
| 33 | + |
| 34 | + |
| 35 | + |
| 36 | +2、抓包 |
| 37 | +``` |
| 38 | +sudo tcpdump -Q "proc=DiffusionBee" |
| 39 | +``` |
| 40 | + |
| 41 | +``` |
| 42 | +Password: |
| 43 | +tcpdump: data link type PKTAP |
| 44 | +tcpdump: verbose output suppressed, use -v[v]... for full protocol decode |
| 45 | +listening on pktap, link-type PKTAP (Apple DLT_PKTAP), snapshot length 524288 bytes |
| 46 | +09:25:33.032957 IP 5c1bf480a210.55306 > edge-z-p4-shv-01-gru2.facebook.com.https: Flags [S], seq 3573734455, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3613718148 ecr 0,sackOK,eol], length 0 |
| 47 | +09:25:34.034117 IP 5c1bf480a210.55306 > edge-z-p4-shv-01-gru2.facebook.com.https: Flags [S], seq 3573734455, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3613719149 ecr 0,sackOK,eol], length 0 |
| 48 | +09:25:35.034419 IP 5c1bf480a210.55306 > edge-z-p4-shv-01-gru2.facebook.com.https: Flags [S], seq 3573734455, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3613720150 ecr 0,sackOK,eol], length 0 |
| 49 | +09:25:36.035753 IP 5c1bf480a210.55306 > edge-z-p4-shv-01-gru2.facebook.com.https: Flags [S], seq 3573734455, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3613721151 ecr 0,sackOK,eol], length 0 |
| 50 | +09:25:37.036930 IP 5c1bf480a210.55306 > edge-z-p4-shv-01-gru2.facebook.com.https: Flags [S], seq 3573734455, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3613722152 ecr 0,sackOK,eol], length 0 |
| 51 | +09:25:38.038126 IP 5c1bf480a210.55306 > edge-z-p4-shv-01-gru2.facebook.com.https: Flags [S], seq 3573734455, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3613723153 ecr 0,sackOK,eol], length 0 |
| 52 | +09:25:40.038747 IP 5c1bf480a210.55306 > edge-z-p4-shv-01-gru2.facebook.com.https: Flags [S], seq 3573734455, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3613725154 ecr 0,sackOK,eol], length 0 |
| 53 | +09:25:44.039186 IP 5c1bf480a210.55306 > edge-z-p4-shv-01-gru2.facebook.com.https: Flags [S], seq 3573734455, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3613729155 ecr 0,sackOK,eol], length 0 |
| 54 | +09:25:52.040347 IP 5c1bf480a210.55306 > edge-z-p4-shv-01-gru2.facebook.com.https: Flags [S], seq 3573734455, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3613737156 ecr 0,sackOK,eol], length 0 |
| 55 | +09:25:53.056284 IP 5c1bf480a210.55307 > 104.21.22.85.https: Flags [S], seq 1043501785, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3463921207 ecr 0,sackOK,eol], length 0 |
| 56 | +09:25:53.232616 IP 5c1bf480a210.55307 > 104.21.22.85.https: Flags [.], ack 2268284160, win 2060, options [nop,nop,TS val 3463921383 ecr 3370931023], length 0 |
| 57 | +09:25:53.233202 IP 5c1bf480a210.55307 > 104.21.22.85.https: Flags [P.], seq 0:517, ack 1, win 2060, options [nop,nop,TS val 3463921383 ecr 3370931023], length 517 |
| 58 | +09:25:53.411151 IP 5c1bf480a210.55307 > 104.21.22.85.https: Flags [.], ack 204, win 2057, options [nop,nop,TS val 3463921562 ecr 3370931202], length 0 |
| 59 | +09:25:53.411798 IP 5c1bf480a210.55307 > 104.21.22.85.https: Flags [P.], seq 517:705, ack 204, win 2057, options [nop,nop,TS val 3463921562 ecr 3370931202], length 188 |
| 60 | +09:25:53.597359 IP 5c1bf480a210.55307 > 104.21.22.85.https: Flags [.], ack 1455, win 2037, options [nop,nop,TS val 3463921748 ecr 3370931388], length 0 |
| 61 | +09:25:53.597431 IP 5c1bf480a210.55307 > 104.21.22.85.https: Flags [.], ack 1480, win 2037, options [nop,nop,TS val 3463921748 ecr 3370931388], length 0 |
| 62 | +09:25:53.599281 IP 5c1bf480a210.55307 > 104.21.22.85.https: Flags [P.], seq 705:729, ack 1480, win 2048, options [nop,nop,TS val 3463921750 ecr 3370931388], length 24 |
| 63 | +09:25:53.599472 IP 5c1bf480a210.55307 > 104.21.22.85.https: Flags [F.], seq 729, ack 1480, win 2048, options [nop,nop,TS val 3463921750 ecr 3370931388], length 0 |
| 64 | +09:25:53.601604 IP 5c1bf480a210.55308 > r-199-59-148-229.twttr.com.https: Flags [S], seq 4273572242, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3593822057 ecr 0,sackOK,eol], length 0 |
| 65 | +09:25:54.601967 IP 5c1bf480a210.55308 > r-199-59-148-229.twttr.com.https: Flags [S], seq 4273572242, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3593823057 ecr 0,sackOK,eol], length 0 |
| 66 | +09:25:55.603155 IP 5c1bf480a210.55308 > r-199-59-148-229.twttr.com.https: Flags [S], seq 4273572242, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3593824059 ecr 0,sackOK,eol], length 0 |
| 67 | +09:25:56.604516 IP 5c1bf480a210.55308 > r-199-59-148-229.twttr.com.https: Flags [S], seq 4273572242, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3593825060 ecr 0,sackOK,eol], length 0 |
| 68 | +09:25:57.605715 IP 5c1bf480a210.55308 > r-199-59-148-229.twttr.com.https: Flags [S], seq 4273572242, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3593826061 ecr 0,sackOK,eol], length 0 |
| 69 | +09:25:58.606917 IP 5c1bf480a210.55308 > r-199-59-148-229.twttr.com.https: Flags [S], seq 4273572242, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3593827062 ecr 0,sackOK,eol], length 0 |
| 70 | +09:26:00.607693 IP 5c1bf480a210.55308 > r-199-59-148-229.twttr.com.https: Flags [S], seq 4273572242, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3593829063 ecr 0,sackOK,eol], length 0 |
| 71 | +09:26:04.608511 IP 5c1bf480a210.55308 > r-199-59-148-229.twttr.com.https: Flags [S], seq 4273572242, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3593833064 ecr 0,sackOK,eol], length 0 |
| 72 | +09:26:12.609854 IP 5c1bf480a210.55308 > r-199-59-148-229.twttr.com.https: Flags [S], seq 4273572242, win 65535, options [mss 1460,nop,wscale 6,nop,nop,TS val 3593841065 ecr 0,sackOK,eol], length 0 |
| 73 | +``` |
| 74 | + |
| 75 | +更多用法请参考tcpdump 帮助文档. |
| 76 | + |
| 77 | + |
| 78 | +最后还是失败了, 把proxy全放开, 也没能下载成功, 可能对方根据来源IP进行了限制吧. |
| 79 | + |
| 80 | +## 参考 |
| 81 | +[《iphone/macOS PC 使用nginx/httpd配置proxy.pac共享socks5 代理加速github网络访问》](../202405/20240505_02.md) |
| 82 | + |
| 83 | +[《macOS 通过“oversea region ECS和ssh隧道转发代理请求” OR “openVPN” 提升github等访问体验 - chrome Proxy SwitchyOmega , cli ... 可用》](../202310/20231029_01.md) |
| 84 | + |
| 85 | +[《用宿主机代理(all_proxy http_proxy https_proxy)来解决docker build或docker 容器中github clone无法访问的问题》](../202403/20240327_01.md) |
| 86 | + |
| 87 | +ip地址详情 |
| 88 | +- https://ipinfo.io/ |
| 89 | + |
| 90 | +Recording a Packet Trace |
| 91 | +- https://developer.apple.com/documentation/network/recording-a-packet-trace |
| 92 | + |
| 93 | +macOS 下使用 tcpdump 抓包 |
| 94 | +- https://www.jianshu.com/p/a57a5b0e58f0 |
| 95 | + |
| 96 | +tcpdump 详细使用指南(请尽情食用) |
| 97 | +- https://blog.csdn.net/qq_24433609/article/details/126729595 |
| 98 | + |
| 99 | +diffusionbee |
| 100 | +- https://github.com/divamgupta/diffusionbee-stable-diffusion-ui/releases |
| 101 | +- https://github.com/divamgupta/diffusionbee-stable-diffusion-ui |
| 102 | + |
| 103 | +wireshark 抓包工具 |
| 104 | +- https://www.wireshark.org/ |
| 105 | + |
| 106 | +sniffnet 网络监控工具 |
| 107 | +- https://sniffnet.net/download/ |
| 108 | + |
| 109 | + |
| 110 | +#### [期望 PostgreSQL|开源PolarDB 增加什么功能?](https://github.com/digoal/blog/issues/76 "269ac3d1c492e938c0191101c7238216") |
| 111 | + |
| 112 | + |
| 113 | +#### [PolarDB 开源数据库](https://openpolardb.com/home "57258f76c37864c6e6d23383d05714ea") |
| 114 | + |
| 115 | + |
| 116 | +#### [PolarDB 学习图谱](https://www.aliyun.com/database/openpolardb/activity "8642f60e04ed0c814bf9cb9677976bd4") |
| 117 | + |
| 118 | + |
| 119 | +#### [PostgreSQL 解决方案集合](../201706/20170601_02.md "40cff096e9ed7122c512b35d8561d9c8") |
| 120 | + |
| 121 | + |
| 122 | +#### [德哥 / digoal's Github - 公益是一辈子的事.](https://github.com/digoal/blog/blob/master/README.md "22709685feb7cab07d30f30387f0a9ae") |
| 123 | + |
| 124 | + |
| 125 | +#### [About 德哥](https://github.com/digoal/blog/blob/master/me/readme.md "a37735981e7704886ffd590565582dd0") |
| 126 | + |
| 127 | + |
| 128 | + |
| 129 | + |
0 commit comments