igor@0: igor@0: На этой странице должна быть представлена igor@0: информация о igor@0: построении виртуальных сетей на основе виртуальных igor@0: машин Xen. igor@0: igor@0: Рассмотрены принципы использования сети в доменах igor@0: Xen, организации и управления виртуальными связями igor@0: между виртуальными машинами. igor@0: igor@0: \subsection{Отключение iptables на мостах} igor@0: Для того чтобы виртуальные мосты работали более приближенно к простому железу, igor@0: нужно отключить применение правил iptables на самом мосту. igor@0: igor@0: \begin{verbatim} igor@0: %# sysctl net.bridge.bridge-nf-filter-vlan-tagged = 0 igor@0: %# sysctl net.bridge.bridge-nf-filter-vlan-tagged=0 igor@0: %# sysctl net.bridge.bridge-nf-call-ip6tables=0 igor@0: %# sysctl net.bridge.bridge-nf-call-iptables=0 igor@0: %# sysctl net.bridge.bridge-nf-call-arptables=0 igor@0: \end{verbatim} igor@0: igor@0: Это, в частности, помогает справиться igor@0: с проблемой, когда трафик домена Xen, igor@0: уходящий через внешний интерфейс обрабатывается igor@0: правилом MASQUERADE некорректно. igor@0: igor@0: Правило в домене 0: igor@0: igor@0: \begin{verbatim} igor@0: %# iptables -t nat -A POSTROUTING -o eth1 -s 192.168.72.0/24 -j MASQUERADE igor@0: \end{verbatim} igor@0: igor@0: Сначала: igor@0: igor@0: \begin{verbatim} igor@0: apt-proxy:~# ping google.com igor@0: PING google.com (64.233.167.99) 56(84) bytes of data. igor@0: (молчание) igor@0: \end{verbatim} igor@0: igor@0: После отключения фильтрации на мостах в домене 0: igor@0: igor@0: \begin{verbatim} igor@0: # ping google.com igor@0: PING google.com (64.233.187.99) 56(84) bytes of data. igor@0: 64 bytes from jc-in-f99.google.com (64.233.187.99): icmp_seq=2 ttl=239 time=145 ms igor@0: 64 bytes from jc-in-f99.google.com (64.233.187.99): icmp_seq=3 ttl=239 time=143 ms igor@0: 64 bytes from jc-in-f99.google.com (64.233.187.99): icmp_seq=4 ttl=239 time=142 ms igor@0: igor@0: --- google.com ping statistics --- igor@0: 4 packets transmitted, 3 received, 25% packet loss, time 3009ms igor@0: rtt min/avg/max/mdev = 142.956/143.791/145.231/1.022 ms igor@0: \end{verbatim} igor@0: igor@0: В данном случае домен был подключен через dummy-интерфейс (однако, проблема существует не только для такого подключения, но и прямого подключения через интерфейс): igor@0: igor@0: \begin{verbatim} igor@0: %# brctl show igor@0: bridge name bridge id STP enabled interfaces igor@0: dummy0br 8000.feffffffffff no pdummy0 igor@0: vif0.1 igor@0: vif5.0 igor@0: \end{verbatim} igor@0: igor@0: \section{Дополнительная информация} igor@0: Процедуры конфигурирования виртуальных igor@0: сетей различной сложности детально описаны здесь: igor@0: \begin{itemize} igor@0: \item XenWiki XenNetworking (англ.) igor@0: \item Xen and Shorewall (англ.) igor@0: \item an attempt to explain xen networking (англ.) — сообщение в списке рассылки Xen igor@0: \item Debian Administration :: Using multiple network cards in XEN 3.0 (англ.) igor@0: \item Xen Networking over bonded VLANs. (англ.) igor@0: \end{itemize} igor@0: