Score:0

รับ Ip จริงจาก NGINX ซึ่งได้รับจากโหลดบาลานเซอร์ L4 ภายนอก

ธง kr

เมื่อลูกค้าใช้บริการของเรา เครือข่ายจะต้องผ่านโหลดบาลานซ์ L4 ของผู้ให้บริการคลาวด์ของเราก่อน (ฉันไม่สามารถควบคุมสิ่งนี้ได้มากนักนอกจากการสนับสนุนลูกค้า)

ในเซิร์ฟเวอร์ของเรา ทราฟฟิกจะเข้าสู่เลเยอร์ NGINX (เชื่อมต่อ) ก่อนแล้วจึงส่งต่อไปยังบริการแบ็กเอนด์

Nginx ได้รับ IP ของตัวโหลดบาลานเซอร์ "X-Forwarded-For" ยังเป็นโมฆะในคำขอ

ฉันจะรับ IP ไคลเอ็นต์จริงจากฝั่ง Nginx ได้อย่างไร

Paul avatar
cn flag
คำขอมาถึงโดยไม่มีข้อมูลใด ๆ เกี่ยวกับต้นทางต้นน้ำ และคุณกำลังมองหาโซลูชันที่ไม่เปลี่ยนแปลงพร็อกซีใช่หรือไม่
Januka samaranyake avatar
kr flag
@Paul ใช่แน่นอน
Score:2
ธง us

เนื่องจากมีตัวจัดสรรภาระงาน L4 หมายความว่าตัวจัดสรรภาระงานสร้างการเชื่อมต่อ TCP กับ nginx ของคุณ

ข้อมูลเดียวที่มีในการเชื่อมต่อ TCP คือที่อยู่ IP ของปลายอีกด้านหนึ่ง ซึ่งก็คือโหลดบาลานเซอร์ในกรณีของคุณ

หากคุณต้องการรับที่อยู่ IP ของไคลเอ็นต์จริง คุณต้องใช้ reverse proxy ซึ่งเพิ่มที่อยู่ IP ของไคลเอ็นต์เดิมเป็นส่วนหัวในคำขอไปยังเซิร์ฟเวอร์ต้นทางของคุณ

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา