proxyproto.nim
0.1.4
proxyproto هي مكتبة خفيفة الوزن تساعد البرامج القديمة على التعامل مع بروتوكول الوكيل. وهو يدعم كلا من IPv4 وIPv6.
يعمل على Linux و macOS
هناك العديد من البرامج القديمة التي لا تدعم بروتوكول الوكيل (خاصة البرامج مغلقة المصدر). عند تشغيلها خلف موازن التحميل أو الوكيل الاحتياطي، فمن الصعب الحفاظ على عنوان IP المصدر.
proxyproto يعترض proc accept()
، وينتظر الاتصال القادم الجديد ويستمع إلى رأس بروتوكول الوكيل من الوكيل الرئيسي (على سبيل المثال، HAProxy، NGINX..)
بمجرد قراءة الرأس، يحل proxyproto محل IP المصدر مع IP الذي يوفره الوكيل الرئيسي.
git clone --depth=1 https://github.com/ba0f3/proxyproto.nim.git proxyproto
cd proxyproto
nim c -d:release src/proxyproto
استخدم مباشرة داخل برنامج nim الذي يقبل الاتصالات الواردة
import proxyproto
بالنسبة للبرامج الموجودة، استخدم LD_PRELOAD
$LD_PRELOAD =./src/libproxyproto.so nc -vkl -p 4444
[PROXY] initializing
[PROXY] hook accept OK
listening on [any] 4444 ...
اشتري لي بعض البيرة https://paypal.me/ba0f3