"IP forwarding" เป็นคำพ้องสำหรับ "routing" มันถูกเรียกว่า "การส่งต่อเคอร์เนล IP" เพราะมันเป็นคุณสมบัติของเคอร์เนลลินุกซ์
เราเตอร์มีอินเตอร์เฟสเครือข่ายหลายตัว หากทราฟฟิกมาในอินเทอร์เฟซหนึ่งที่ตรงกับซับเน็ตของอินเทอร์เฟซเครือข่ายอื่นเราเตอร์จะส่งต่อทราฟฟิกนั้นไปยังอินเทอร์เฟซเครือข่ายอื่น
สมมุติว่าคุณมี NIC สองตัวหนึ่งตัว (NIC 1) จะอยู่ที่ 192.168.2.1/24 และอีกอัน (NIC 2) คือ 192.168.3.1/24 หากเปิดใช้งานการส่งต่อและแพ็คเก็ตมาใน NIC 1 ด้วย "ที่อยู่ปลายทาง" ที่ 192.168.3.8 เราเตอร์จะส่งแพ็กเก็ตนั้นซ้ำจาก NIC 2
เป็นเรื่องปกติสำหรับเราเตอร์ที่ทำงานเป็นเกตเวย์ไปยังอินเทอร์เน็ตเพื่อให้มีเส้นทางเริ่มต้นโดยการรับส่งข้อมูลใด ๆ ที่ไม่ตรงกับ NIC ใด ๆ จะผ่าน NIC ของเส้นทางเริ่มต้น ดังนั้นในตัวอย่างข้างต้นหากคุณมีการเชื่อมต่ออินเทอร์เน็ตบน NIC 2 คุณจะต้องตั้งค่า NIC 2 เป็นเส้นทางเริ่มต้นของคุณจากนั้นการรับส่งข้อมูลใด ๆ ที่เข้ามาจาก NIC 1 ที่ไม่ได้กำหนดไว้สำหรับสิ่งที่ 192.168.2.0/24 ผ่าน NIC 2. หวังว่าจะมีเราเตอร์อื่นที่ผ่าน NIC 2 ที่สามารถกำหนดเส้นทางต่อไปได้ (ในกรณีของอินเทอร์เน็ตการกระโดดต่อไปจะเป็นเราเตอร์ของ ISP ของคุณและจากนั้นเราเตอร์ของผู้ให้บริการต้นน้ำเป็นต้น)
การเปิดใช้งานip_forward
จะบอกระบบ Linux ของคุณให้ทำสิ่งนี้ เพื่อให้มีความหมายคุณจำเป็นต้องมีเครือข่ายสองอินเทอร์เฟซ (การ์ด NIC แบบมีสายใด ๆ , การ์ด Wifi หรือชิปเซ็ต, ลิงก์ PPP ผ่านโมเด็ม 56k หรือซีเรียลเป็นต้น)
เมื่อทำการกำหนดเส้นทางความปลอดภัยเป็นสิ่งสำคัญและนั่นคือสิ่งที่แพ็กเก็ตตัวกรองของ Linux iptables
เข้ามาเกี่ยวข้อง ดังนั้นคุณจะต้องiptables
กำหนดค่าให้สอดคล้องกับความต้องการของคุณ
โปรดทราบว่าการเปิดใช้งานการส่งต่อโดยiptables
ปิดการใช้งานและ / หรือไม่ใช้ไฟร์วอลล์และการรักษาความปลอดภัยในบัญชีอาจทำให้คุณเปิดช่องโหว่ได้หาก NICs หนึ่งกำลังเผชิญกับอินเทอร์เน็ตหรือเครือข่ายย่อยที่คุณไม่สามารถควบคุมได้