Apache mod_proxy を使用して転送プロキシ サーバーを設定し、ProxyRemote 機能を使用して他の 20 個のプロキシ サーバーに接続します。
ProxyRemote には 1 つの URL のみを設定できます。私の場合は proxy.mydomain.com:8085 です。
このサブドメインに 20 個の異なるプロキシ IP アドレスを使用してラウンドロビンを設定しました。nslookup と ping により、ラウンドロビンが適切に機能していることが証明されました。
この設定を使用すると、ProxyRemote は IP に最も近いサブネットのマシンのみを使用します。
例えば私のマシンが91.123.123.123の場合
そして私のプロキシは
5.4.12.9
188.23.9.111
91.222.111.99
等々...
常に 91.222.111.99 が使用され、他のアドレスは使用されません。
なぜこのようなことが起こるのかはわかりませんが、実際には他の 20 個のプロキシを使用する 1 台のプロキシ マシンが必要です。
アイデアは、毎回ランダムな IP でターゲット URL に接続するプロキシ マシンを 1 台作成することです。
答え1
getaddrinfo
私はちょうどその問題に遭遇しました。これは、共通プレフィックス長で優先順位ソートを実装しているためです。RFC3484/2.2。
この動作は編集することで調整できます/etc/gai.conf