LINUX.ORG.RU
ФорумAdmin

qemu-kvm раздать сеть через NAT

 


0

1

Здравствуйте, имеется хост с некоторым количеством реальных IP адресов, нужно сделать так чтобы гостевые ОС имели реальный IP и в качестве шлюза у них выступал хост на котором и запущены эти виртуалки, чтобы можно было рулить правилами в iptables'е для виртуалок, тоесть суть такая: виртуалка(1.1.1.3)->хост(1.1.1.2)->шлюз провайдера(1.1.1.1)->интернет Как это сделать не очень понимаю, получилось поднять бридж на хосте и tap, так все получилось и все работает, но на виртуалках не кто не мешает сменить шлюз хоста(1.1.1.2) на шлюз провайдера(1.1.1.1) и тем самым обходить iptables на шлюзе, а это недопустимо.


фильтруй пакеты на хосте, не позволяй им обращаться непосредственно в шлюзу провайдера
Трафик на мосту тоже можно фильтровать, даже iptables. Но тебе, скорее всего будет нужен ebtables

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)

добавь правило в forward относительно моста, что бы левые ip не лезли куда не следует.

invokercd ★★★★
()
Ответ на: комментарий от Pinkbyte

Что-то не получается. ebtables -D FORWARD -p ip --ip-source 1.1.1.3 --ip-destination 1.1.1.1 -j DROP В этом случае шлюз провайдера перестает пинговаться, но при этом если его прописать шлюзом то все равно все работает.

Alfer
() автор топика
Ответ на: комментарий от Alfer

Потому что надо не по ip-destination фильтровать.

Сам подумай - ты указываешь шлюз провайдера и пингуешь, скажем, 8.8.8.8. IP адрес назначения будет соответственно 8.8.8.8. А вот MAC-адрес... Ну ты понел

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

Хотя все равно что-то не получается. Сделал ebtables -A FORWARD -s 52:54:00:12:34:56 -j DROP но тогда при этом и через шлюз хоста не работает интернет.

Alfer
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.