Bestimmte Anwendungsfälle erfordern, dass Sie den Datenverkehr in Programmen projizieren, die Proxys nicht von Haus aus unterstützen. Im vorigen Blog wurde erörtert, wie dies unter Windows möglich ist, aber es gibt auch viele Anwendungsfälle für Proxys unter Linux oder sogar Docker-Container für zusätzliche Flexibilität.
In diesem Blog-Beitrag geht es um die Verwendung von Proxys für Docker-Container unter Verwendung des Docker-Containers xjasonlyu/tun2socks.
tun2socks ist ein leichtgewichtiges und portables Netzwerk-Tunneling-Tool, mit dem Sie den Datenverkehr über einen Proxy-Server leiten können. Es ist in Go geschrieben und als eigenständige ausführbare Datei oder als Docker-Container verfügbar.
In diesem Leitfaden konzentriere ich mich auf die Verwendung mit Docker, so dass Sie anschließend jeden anderen Docker-Container damit verbinden und Proxys verwenden können.
Zunächst müssen wir einen ersten Docker-Container erstellen, der das Proxying übernimmt.
docker run -d --name tun2socks \
-e EXTRA_COMMANDS='echo "nameserver 1.1.1.1" > /etc/resolv.conf;ip rule add iif lo ipproto udp dport 53 lookup main;' \
-e PROXY=http://<user>:<pass>@rp.proxyscrape.com:6060 \
-v '/dev/net/tun:/dev/net/tun' --cap-add=NET_ADMIN \
xjasonlyu/tun2socks
In this example, I am using Proxyscrape residential proxies, but you can also use premium proxies or any other proxies as well.
Now that we have created the container that does the proxying, we can use any container we want to use this container’s network by just adding the --network=container:tun2socks flag.
Um zu testen, ob alles korrekt funktioniert, können Sie einen von mir erstellten Testcontainer verwenden, der IPinfo-Standortdaten zurückgibt.
docker run --rm --network=container:tun2socks hibenji/checkip
Wie Sie sehen können, sind wir nun in der Lage, so ziemlich alles über Proxies zu vermitteln, auch wenn es nicht nativ unterstützt wird.
Natürlich können Sie rotierende Proxies bei der Erstellung des ersten Containers verwenden, aber Sie können auch mehrere tun2socks-Container erstellen, die alle Sticky Sessions haben, wenn dies erforderlich ist.
Dieser Ansatz für das Proxying in Docker eröffnet eine Welt voller Möglichkeiten. Sie können jetzt Proxys in Verbindung mit praktisch jedem Docker-Container verwenden, auch mit solchen ohne integrierte Proxy-Unterstützung. Dies kann die Fähigkeiten Ihrer containerisierten Anwendungen verbessern und Ihnen die Durchführung von Aufgaben ermöglichen, die ohne diese Ebene der Netzwerkkontrolle schwierig oder unmöglich gewesen wären.
Danke fürs Lesen, und ich hoffe, Sie haben etwas gelernt!
Dieser Artikel wurde von Benji, einem Benutzer von ProxyScrape , geschrieben.