Що таке пересилання ip ip?


70

Я бачив у багатьох блогах, використовуючи цю команду для ввімкнення переадресації IP при використанні багатьох інструментів безпеки / обнюхування на Linux

echo 1 > /proc/sys/net/ipv4/ip_forward

Чи може хтось пояснити мені простим словом, що по суті робить ця команда? Це перетворює вашу систему в маршрутизатор?


1
файл python, щоб увімкнути та відключити портforwarding gist.github.com/addminuse/7747903cd420b15f17e0

Відповіді:


77

"Переадресація IP" - синонім "маршрутизації". Це називається "переадресація IP-ядра", оскільки це особливість ядра Linux.

Маршрутизатор має кілька мережевих інтерфейсів. Якщо трафік надходить на один інтерфейс, який відповідає підмережі іншого мережевого інтерфейсу, маршрутизатор пересилає цей трафік на інший мережевий інтерфейс.

Скажімо, у вас є два 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, які можуть далі прокласти його (у випадку Інтернету наступним стрибком буде маршрутизатор вашого провайдера, а потім їх провайдери за поточним маршрутизатором тощо)

Увімкнення ip_forwardповідомляє вашій системі Linux зробити це. Щоб це було важливим, вам потрібні два мережеві інтерфейси (будь-які 2 або більше провідних NIC-карт, Wifi-карт або наборів чіпів, PPP-посилання через модем 56k або серійний і т.д.).

Під час маршрутизації важлива безпека, і саме тут входить фільтр пакетів Linux iptables. Тому вам знадобиться iptablesконфігурація, що відповідає вашим потребам.

Зауважте, що ввімкнення переадресації з iptablesвимкненим та / або без врахування брандмауера та безпеки може призвести до вразливих уявлень, якщо один із сетевих секторів звернувся до Інтернету або підмережі, над якою ви не маєте контролю.


2
Правильно, ви захочете зробити NAT, якщо NIC 2 - це приватний IP. Linux також може робити NAT, і iptablesце спосіб його налаштувати.
LawrenceC

Чи потрібен NAT для даних, що переходять від NIC 2 до NIC 1?
GutenYe

2
Зазвичай NAT працює від локальної мережі до WAN, тому якщо NIC 2 має приватний IP, а NIC 1 має загальнодоступний 1, вам потрібен NAT; В Зокрема, інтернет-облицювальний інтерфейсу (NIC 1 на вище) потрібно MASQUERADEправило в iptables«х POSTROUTINGна ланцюгу , щоб зробити це. Див. Revsys.com/writings/quicktips/nat.html та i.stack.imgur.com/rzz83.png .
LawrenceC

Простими словами, чи буде правильно, якщо я скажу, що включення переадресації IP означає можливість пристрою передавати пакет від одного з NIC до іншого свого NIC? Крім того, чи було б правдою, якщо я скажу, що ввімкнення переадресації IP-адреси насправді не потрібно на машині з одним IP / NIC?
Sree

1
@ultrasawblade Якщо увімкнено переадресацію IP та має підключення до Інтернету на NIC 2, а також як маршрут за замовчуванням, якщо він отримає пакет, призначений для 192.168.2.2 з NIC 1, що робитиме роутер?
бобо

3

При включенні "Переадресація IP" дозволяє машині Linux отримувати вхідні пакети та пересилати їх. Машина Linux, що діє як звичайний хост, не потребує включення переадресації IP, оскільки вона просто генерує та отримує IP-трафік для власних цілей (тобто для цілей свого користувача).

Однак бувають випадки, коли переадресація IP корисна: 1. Ми хочемо, щоб наша машина діяла як маршрутизатор, отримуючи пакети від інших хостів і направляючи їх до місця призначення. 2. Ми погані хлопці, і хочемо представити собі іншу машину в так званій " атаці " людина в середині ". У цьому випадку ми хочемо перехопити та побачити весь трафік, спрямований на жертву, але ми також хочемо передати цей трафік їй, щоб вона не «відчула» нашу присутність.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.