ใช้ Request.ServerVariables(REMOTE_ADDR) ใน ASP เพื่อรับที่อยู่ IP ของไคลเอ็นต์ อย่างไรก็ตาม หากไคลเอ็นต์ใช้พร็อกซีเซิร์ฟเวอร์ในการเข้าถึง สิ่งที่ได้รับคือที่อยู่ IP ของพร็อกซีเซิร์ฟเวอร์ ไม่ใช่ที่อยู่ IP ของไคลเอ็นต์จริง หากต้องการรับที่อยู่ IP ที่แท้จริงของไคลเอ็นต์ผ่านพร็อกซีเซิร์ฟเวอร์ ให้ใช้ Request.ServerVariables(HTTP_X_FORWARDED_FOR) เพื่ออ่าน
อย่างไรก็ตาม ควรสังเกตว่าไม่ใช่ทุกพร็อกซีเซิร์ฟเวอร์ที่สามารถใช้ Request.ServerVariables(HTTP_X_FORWARDED_FOR) เพื่ออ่าน IP จริงของไคลเอ็นต์ได้ IP บางส่วนที่อ่านด้วยวิธีนี้ยังคงเป็น IP ของพร็อกซีเซิร์ฟเวอร์
สิ่งที่ควรทราบอีกประการหนึ่งก็คือ หากไคลเอ็นต์ไม่เข้าถึงผ่านพร็อกซีเซิร์ฟเวอร์ ค่าที่ได้รับจาก Request.ServerVariables(HTTP_X_FORWARDED_FOR) จะว่างเปล่า ดังนั้น หากคุณต้องการใช้วิธีนี้ในโปรแกรมของคุณ คุณสามารถทำได้ดังนี้:
-
userip = Request.ServerVariables (HTTP_X_FORWARDED_FOR)
ถ้า userip = ดังนั้น userip = Request.ServerVariables(REMOTE_ADDR)
-
นั่นคือ: หากไคลเอนต์ผ่านพร็อกซีเซิร์ฟเวอร์ ค่าของ HTTP_X_FORWARDED_FOR จะถูกนำไปใช้ หากไคลเอนต์ไม่ผ่านพร็อกซีเซิร์ฟเวอร์ ค่าของ REMOTE_ADDR จะถูกนำไปใช้