ในปัจจุบัน การทำเว็ปแอปพลิเคชั่น
การเก็บ log ข้อมูลการใช้งาน ของผู้ใช้ รวมถึง ip address ของผู้ใช้ ทุกๆคนที่เข้ามาใช้งาน
เป็นสิ่งที่ควรจะมี และไม่ควรละเลย ซึ่งจะมีประโยชน์ในแง่ การประเมินพฤติกรรมของผู้ใช้งาน
หรือรวมทั้งการสืบสาวถึงตัวผู้ใช้งานในพื้นที่ดังกล่าว(ใน แง่การตามหาผู้กระทำความผิด)
ซึ่งในที่นี้เราจะมาดู วิธีการตรวจสอบ รวมถึงวิธีการหลีกเลี่ยง ลดความเสี่ยงในการถูกตรวจสอบถึง ip address ที่แท้จริง
โดยเราจะศึกษาใน 2 แง่ ทั้งการป้องกัน และการหลีกเลี่ยง
เปรียบเสมือน รู้เขารู้เรา รบร้อยครั้ง ชนะสักครั้งก็ยังดี (ฮ่าๆๆ)
(คำเตือน ข้อมูลจากทั้งหมดนี้ นำมาจากการค้นคว้า ผสมกับประสบการณ์ที่ได้ทำงานมา ดังนั้นข้อมูลนั้น อาจจะยังไม่สมบูรณ์ หรือยังผิดพลาดประการใด ก็ขออภัย และอยากรบกวนให้ผู้ที่เชียวชาญกว่า แนะนำเพิ่มเติมด้วยครับ)
การตรวจสอบ ip address ผู้ใช้งาน ด้วย php
[hide=2]
เป็นการใช้ ฟังก์ชั่นที่นิยมคือ ฟังก์ชั่น getenv(REMOTE_ADDR);
โดย REMOTE_ADDR จะเก็บ ค่า ip address ของผู้ใช้งานเอาไว้
เราสามารถเขียนเป็นคำสั่งได้ว่า
$ip = getenv(REMOTE_ADDR); //เราจะได้ip address ของผูั้ใช้งาน อยู่ในตัวแปร $ip ทันที
แต่.. ในทางปฏิบัติ ผู้ใช้งานในบางกลุ่มก็มีวิธีการในการหลีกเลี่ยงการตรวจสอบ ip address โดยใช้ ประโยชน์ของ proxy server ซึ่งโดย ปกติแล้ว proxy นั่น มีไว้เพื่อช่วยในการท้องโลกอินเตอร์เน็ตได้รวจเร็วยิ่งขึ้น เพราะ server ที่เป็น proxy จะเก็บหน้าเพจต่างๆที่เคยได้ เปิดแล้วมาเก็บไว้ที่ server และเมื่อมีการเปิด อีกครั้ง server ก็จะ่นำหน้าเพจที่บันทึกไว้ที่ server นำออกมาให้ผู้ที่ใช้ proxy ของ server นี้ โดยที่ไม่ต้องโหลดหน้าเพจใหม่ ทุกครั้ง
แต่แล้ว ก็จะมีผู้ใช้งานทั้งหลายเอาประโยชน์จาก proxy ตรงที่ ip ที่แท้จริงของผู้ใช้จะถูกส่งไปที่ proxy server
และ proxy server จะไปโหลดหน้าเพจนั้น ด้วย ip address ของ proxy server ซึ่งจะทำให้
การใช้ฟังก์ชั่น ข้างต้นไม่ได้รับ ip address ที่แท้จริงของ ผู้ใช้งาน
php จึงเตรียมฟังก์ชั่นไว้อีกตัว เพื่อ ร้องขอ ip address ที่แท้จริง จาก proxy server นั่นก็ึคือ
getenv(HTTP_X_FORWARDED_FOR);
เท่านี้ เราก็จะได้ ip address ที่แท้จริงของผู็ที่ใช้ proxy server ด้วย
ต่อจากนี้จะเป็นโค๊ดตัวอย่าง การใช้ฟังก์ชั่น เพื่อตรวจสอบ ip address
[SIZE=2]ตรวจสอบ IP Address และ Hostname อย่างผู้รู้จริง </span>
ในบางครั้งเราต้องการตรวจสอบว่าผู้ที่เข้ามาเยี่ยมชมเว็บไซต์ของเราหรือผู้ที่มาโพส ข้อความในเวบบอร์ดของเรานั้นมาจากที่ใด
ซึ่งวิธีการที่ง่ายและเป็นที่นิยมใช้กันก็คือการตรวจสอบ IP Address ของเครื่องผู้ชมที่เปิดดูเว็บไซต์ของเรานั่นเอง โดยหลักการในการตรวจสอบ IP Address นี้ทำได้โดยการตรวจจาก Predefined Variable ของเว็บเซิร์ฟเวอร์ที่เราใช้งานอยู่ ซึ่ง Predefined Variable นี้จะเป็นตัวแปรที่สร้างขึ้นมาโดยอัติโนมัติทุกครั้งที่มีการรันสคริปของ PHP
Predefine Variable ที่เก็บค่า IP Address ของผู้ใช้ไว้ก็คือ REMOTE_ADDR ดังนั้นเมื่อเราต้องการตรวจสอบค่า IP Address ของผู้ใข้ เราจะใช้ฟังก์ชัน getenv ในการดึงเอาค่าของ Predefined Variable นี้มาเก็บไว้ในตัวแปร ดังนี้
[code]<?