LINUX.ORG.RU
решено ФорумAdmin

[Xen] Проброс интернета определенным DomU


0

0

Доброго времени.
Dom0 Debian 2.6.26-2-xen-amd64

Суть. Есть к примеру 3 виртуалки: 2 венды и 1 дебиан.
На данный момент сеть сконфигурирована так:

xend-config.sxp

(network-script 'network-bridge bridge=xenbr0 netdev=dummy0')
(vif-script vif-bridge)

Dom0 interfaces

auto dummy0
iface dummy0 inet static
	address 192.168.10.1
	netmask 255.255.255.0
allow-hotplug wlan0
iface wlan0 inet static
	address 192.168.0.12
	netmask 255.255.255.0
	gateway 192.168.0.1
	dns-nameservers 192.168.0.1
	network 192.168.0.0
	broadcast 192.168.0.255

DomU Vista

vif = [ 'type=ioemu, bridge=xenbr0, model=ne2k_isa, mac=00:aa:ab:00:0b:0a' ] 

Vista Lan

address 192.168.10.20
netmask 255.255.255.0
gateway 192.168.10.1
network 192.168.10.0
broadcast 192.168.0.255
dns-nameservers 192.168.0.1 # адрес wifi роутера, к которому собственно я подключен 192.168.0.1
При этих настройках Виста(ы) прекрасно работают как в локалке, так и видят интернет.
Инет пробрасываю так -A POSTROUTING -o wlan0 -j MASQUERADE

Далее, возникла необходимость поставить и одновременно работать еще и в Дебиане. DomU Debian

vif = [ 'bridge=xenbr0, model=rtl8139, mac=00:16:3e:00:d0:33' ]
Пытаюсь настроить interfaces по аналогии с вендами

eth0

address 192.168.10.30
netmask 255.255.255.0
gateway 192.168.10.1
network 192.168.10.0
# сеть 192.168.10.0 работает исправно, однако, при добавлении
dns-nameservers 192.168.0.1
# eth0 перестает корректно подниматься с заданными параметрами.
Так же не могу понять, как пробросить интернет только определенной(ым) ВМ, пробовал
-A POSTROUTING -o wlan0 -s 192.168.10.30 -j MASQUERADE
-A POSTROUTING -o wlan0 -s 192.168.10.20 -j MASQUERADE
Срабатывает только первая цепочка правил.

Объясните как правильно все это организовать.

># eth0 перестает корректно подниматься с заданными параметрами.

Оставь в покое interfaces и пропиши «nameserver 192.168.0.1» в /etc/resolv.conf.

Срабатывает только первая цепочка правил.


Странно.
Попробуй оставить общий нат для всех, а ограничения вводить в FORWARD, например,
iptables -A FORWARD -s 192.168.10.10 -j REJECT

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

Спасибо!

> Оставь в покое interfaces и пропиши «nameserver 192.168.0.1» в /etc/resolv.conf.

Думал он должен автоматом внестись туда, прописал - работает.

iptables -A FORWARD -s 192.168.10.30 -j REJECT

Да, именно то что нужно, оказалось и эти вариации работали
-A POSTROUTING -o wlan0 -s 192.168.10.30 -j MASQUERADE
-A POSTROUTING -o wlan0 -s 192.168.10.20 -j MASQUERADE
Но если их коментить, к примеру, то обновления не вступают сразу в силу, а только после очистки :FORWARD DROP
-A FORWARD -s 192.168.10.10 -j REJECT даже лучше.

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

btw, можно ли в рамках vif-bridge организовать сеть между самими ВМ или уже нужно использовать vif-nat?

Не могу понять как пробросить сеть 192.168.10.0/8 по идее все ВМ в одной сети, но друг-друга не пингуют.

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

>можно ли в рамках vif-bridge организовать сеть между самими ВМ

По идее все должно работать. Покажи вывод iptables-save с dom0.
И фаерволы на виндах отключи.

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

Вроде разобрался.
Форвард внутри ВМ сети.

-A FORWARD -s 192.168.10.0/24 -d 192.168.10.0/24 -j ACCEPT

Выборочная раздача интернета.
-A FORWARD -s 192.168.10.20 -d 192.168.0.1 -j ACCEPT
-A FORWARD -s 192.168.10.10 -d 192.168.0.1 -j REJECT

Проверял в разных вариациях, работает.

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