proxy 的路由表:

root@proxy:/etc/tinyproxy# ip route

default via 192.168.0.1 dev enp2s0

172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown

192.168.0.0/24 dev enp2s0 proto kernel scope link src 192.168.0.138

192.168.20.0/24 dev wlp4s0 proto kernel scope link src 192.168.20.112

tinyproxy 的配置:

Port 8888

Listen 192.168.0.138

Bind 192.168.20.112

#BindSame yes

curl via proxy 的现象:

$ curl https://xxx/ip -x http://proxy.server:8888 -vvv

* Trying 192.168.0.138:8888...

* TCP_NODELAY set

* Connected to proxy.server (192.168.0.138) port 8888 (#0)

* allocate connect buffer!

* Establish HTTP proxy tunnel to xxx:443

> CONNECT xxx:443 HTTP/1.1

> Host: xxx:443

> User-Agent: curl/7.68.0

> Proxy-Connection: Keep-Alive

>

* Proxy CONNECT aborted

* CONNECT phase completed!

* Closing connection 0

curl: (56) Proxy CONNECT aborted

所以总结一下现象是

proxy.server 的 8888 端口可以连上,去程 ok,回程挂了。

tinyproxy 的 log:

INFO Sep 12 07:31:21 [410600]: Initializing tinyproxy ...

INFO Sep 12 07:31:21 [410600]: Reloading config file

INFO Sep 12 07:31:21 [410600]: Added address [192.168.0.138] to listen addresses.

INFO Sep 12 07:31:21 [410600]: Outgoing connections bound to IP 192.168.20.112

INFO Sep 12 07:31:21 [410600]: Setting "Via" header to 'tinyproxy'

INFO Sep 12 07:31:21 [410600]: Adding Port [443] to the list allowed by CONNECT

INFO Sep 12 07:31:21 [410600]: Adding Port [563] to the list allowed by CONNECT

INFO Sep 12 07:31:21 [410600]: listen_sock called with addr = '192.168.0.138'

INFO Sep 12 07:31:21 [410600]: trying to listen on host[192.168.0.138], family[2], socktype[1], proto[6]

INFO Sep 12 07:31:21 [410600]: listening on fd [0]

INFO Sep 12 07:31:21 [410600]: Now running as group "tinyproxy".

INFO Sep 12 07:31:21 [410600]: Now running as user "tinyproxy".

INFO Sep 12 07:31:21 [410600]: Setting the various signals.

INFO Sep 12 07:31:21 [410600]: Creating child number 1 of 10 ...

INFO Sep 12 07:31:21 [410600]: Creating child number 2 of 10 ...

INFO Sep 12 07:31:21 [410600]: Creating child number 3 of 10 ...

INFO Sep 12 07:31:21 [410600]: Creating child number 4 of 10 ...

INFO Sep 12 07:31:21 [410600]: Creating child number 5 of 10 ...

INFO Sep 12 07:31:21 [410600]: Creating child number 6 of 10 ...

INFO Sep 12 07:31:21 [410600]: Creating child number 7 of 10 ...

INFO Sep 12 07:31:21 [410600]: Creating child number 8 of 10 ...

INFO Sep 12 07:31:21 [410600]: Creating child number 9 of 10 ...

INFO Sep 12 07:31:21 [410600]: Creating child number 10 of 10 ...

INFO Sep 12 07:31:21 [410600]: Finished creating all children.

CONNECT Sep 12 07:31:26 [410602]: Connect (file descriptor 6): web.server [192.168.0.178]

CONNECT Sep 12 07:31:26 [410602]: Request (file descriptor 6): CONNECT xxx:443 HTTP/1.1

INFO Sep 12 07:31:26 [410602]: No upstream proxy for xxx

INFO Sep 12 07:31:26 [410602]: opensock: opening connection to xxx:443

INFO Sep 12 07:31:26 [410602]: opensock: getaddrinfo returned for xxx:443

ERROR Sep 12 07:33:37 [410602]: opensock: Could not establish a connection to xxx

INFO Sep 12 07:33:37 [410602]: no entity

emm 看起来是 opensock 的问题么?

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐