Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества? Помогите нам с документацией!
0 Пользователей и 1 Гость просматривают эту тему.
А как сделать через роутинг??
# cat /etc/libvirt/qemu/networks/virt-lan.xml<network> <name>virt-lan</name> <uuid>57551d88-7448-3132-8975-cfab68067957</uuid> <forward mode='route'/> <bridge name='virbr1' stp='on' delay='0' /> <mac address='52:54:00:A5:BF:E0'/> <ip address='10.1.28.254' netmask='255.255.255.0'> <dhcp> <range start='10.1.28.1' end='10.1.28.200' /> </dhcp> </ip></network># virsh net-autostart --network "virt-lan"# virsh net-start --network "virt-lan"
Цитата: a_efimov от 16 Апреля 2013, 15:58:34А как сделать через роутинг??libvirt?Код: (xml) [Выделить]# cat /etc/libvirt/qemu/networks/virt-lan.xml<network> <name>virt-lan</name> <uuid>57551d88-7448-3132-8975-cfab68067957</uuid> <forward mode='route'/> <bridge name='virbr1' stp='on' delay='0' /> <mac address='52:54:00:A5:BF:E0'/> <ip address='10.1.28.254' netmask='255.255.255.0'> <dhcp> <range start='10.1.28.1' end='10.1.28.200' /> </dhcp> </ip></network># virsh net-autostart --network "virt-lan"# virsh net-start --network "virt-lan"
virt-lan файла нет. Только default. В него править?
Цитата: a_efimov от 16 Апреля 2013, 18:48:25virt-lan файла нет. Только default. В него править?Да, пожалуй, проще будет в него.Но, на всякий случай, сделайте бэкап.
<network> <name>default</name> <bridge name="virbr0" /> <forward mode='route'/> <bridge name='virbr1' stp='on' delay='0' /> <mac address='52:54:00:A5:BF:E0'/> <ip address="192.168.122.1" netmask="255.255.255.0"> <dhcp> <range start="192.168.122.2" end="192.168.122.254" /> </dhcp> </ip></network>
# Generated by iptables-save v1.4.12 on Tue Apr 16 19:28:01 2013*nat:PREROUTING ACCEPT [2163:423420]:INPUT ACCEPT [757:97133]:OUTPUT ACCEPT [6174:569475]:POSTROUTING ACCEPT [6165:568699]-A PREROUTING -d 192.168.0.100/32 -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.122.93:3389-A PREROUTING -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT-A PREROUTING -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.122.93-A POSTROUTING -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p tcp -j MASQUERADE --to-ports 1024-65535-A POSTROUTING -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p udp -j MASQUERADE --to-ports 1024-65535-A POSTROUTING -s 192.168.122.0/24 ! -d 192.168.122.0/24 -j MASQUERADE-A POSTROUTING -d 192.168.122.93/32 -p tcp -m tcp --dport 3389 -j SNAT --to-source 192.168.0.100COMMIT# Completed on Tue Apr 16 19:28:01 2013# Generated by iptables-save v1.4.12 on Tue Apr 16 19:28:01 2013*mangle:PREROUTING ACCEPT [14126984:3855269873]:INPUT ACCEPT [13898857:3670081115]:FORWARD ACCEPT [208304:176572460]:OUTPUT ACCEPT [15151003:7403936683]:POSTROUTING ACCEPT [15375439:7581922097]-A POSTROUTING -o virbr0 -p udp -m udp --dport 68 -j CHECKSUM --checksum-fillCOMMIT# Completed on Tue Apr 16 19:28:01 2013# Generated by iptables-save v1.4.12 on Tue Apr 16 19:28:01 2013*filter:INPUT ACCEPT [13898394:3669984875]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [15151003:7403936683]-A INPUT -i virbr0 -p udp -m udp --dport 53 -j ACCEPT-A INPUT -i virbr0 -p tcp -m tcp --dport 53 -j ACCEPT-A INPUT -i virbr0 -p udp -m udp --dport 67 -j ACCEPT-A INPUT -i virbr0 -p tcp -m tcp --dport 67 -j ACCEPT-A FORWARD -d 192.168.122.0/24 -o virbr0 -m state --state RELATED,ESTABLISHED -j ACCEPT-A FORWARD -s 192.168.122.0/24 -i virbr0 -j ACCEPT-A FORWARD -i virbr0 -o virbr0 -j ACCEPT-A FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable-A FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable-A FORWARD -m conntrack --ctstate DNAT -j ACCEPTCOMMIT# Completed on Tue Apr 16 19:28:01 2013
Сделаю таким:
Цитата: a_efimov от 16 Апреля 2013, 19:16:44Сделаю таким:Во-первых, там явный косяк: bridge идёт 2 раза.Во-вторых, для виртуальной сети в режиме роутинга nat на хосте не нужен.Однако, клиент должен знать маршрут до этой сети.
a_efimov, объясняю ещё раз:1) исправить файл конфигурации виртуальной сети, должно получиться примерно как у меня;2) вычистить таблицу nat в iptables, она не нужна;3) либо на шлюзе, либо у клиента прописать маршрут до виртуальной сети;4) перезапустить сервис libvirtd и выполнить холодный рестарт гостя.
*nat:PREROUTING ACCEPT [2163:423420]:INPUT ACCEPT [757:97133]:OUTPUT ACCEPT [6174:569475]:POSTROUTING ACCEPT [6165:568699]-A PREROUTING -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT-A PREROUTING -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.122.93COMMIT
Руками делать.Код: [Выделить]*nat:PREROUTING ACCEPT [2163:423420]:INPUT ACCEPT [757:97133]:OUTPUT ACCEPT [6174:569475]:POSTROUTING ACCEPT [6165:568699]-A PREROUTING -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT-A PREROUTING -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.122.93COMMITВот такой нат у вас должен был быть, при условии, что маршрутизация нормально работает. Кто же знал, что вы там уже успели намудрить.
Вы даже не представляете, как забавно ваш пост смотрится со стороны.Я вам дал готовый скрипт для iptables-restore, только сохраняй и загружай - а вы спрашиваете "как".
Сохранить приведённый [ код ] в файл.Сказатьsudo iptables-restore имяфайлаУбедиться, что изменения подхватились (sudo iptables-save)Проверить работу проброшенного порта.Если не работает - показывайте маршрутизацию с хоста. (ip route show)
sudo iptables-restore < /home/alexander/sc.rules
# Generated by iptables-save v1.4.12 on Tue Apr 16 21:30:12 2013*nat:PREROUTING ACCEPT [1:136]:INPUT ACCEPT [1:136]:OUTPUT ACCEPT [0:0]:POSTROUTING ACCEPT [0:0]-A PREROUTING -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT-A PREROUTING -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.122.93COMMIT# Completed on Tue Apr 16 21:30:12 2013# Generated by iptables-save v1.4.12 on Tue Apr 16 21:30:12 2013*mangle:PREROUTING ACCEPT [188767:79938865]:INPUT ACCEPT [186590:79459671]:FORWARD ACCEPT [1832:376451]:OUTPUT ACCEPT [181218:56574716]:POSTROUTING ACCEPT [183414:56988952]-A POSTROUTING -o virbr0 -p udp -m udp --dport 68 -j CHECKSUM --checksum-fillCOMMIT# Completed on Tue Apr 16 21:30:12 2013# Generated by iptables-save v1.4.12 on Tue Apr 16 21:30:12 2013*filter:INPUT ACCEPT [186566:79456378]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [181213:56574220]-A INPUT -i virbr0 -p udp -m udp --dport 53 -j ACCEPT-A INPUT -i virbr0 -p tcp -m tcp --dport 53 -j ACCEPT-A INPUT -i virbr0 -p udp -m udp --dport 67 -j ACCEPT-A INPUT -i virbr0 -p tcp -m tcp --dport 67 -j ACCEPT-A FORWARD -d 192.168.122.0/24 -o virbr0 -m state --state RELATED,ESTABLISHED -j ACCEPT-A FORWARD -s 192.168.122.0/24 -i virbr0 -j ACCEPT-A FORWARD -i virbr0 -o virbr0 -j ACCEPT-A FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable-A FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachableCOMMIT# Completed on Tue Apr 16 21:30:12 2013
Страница сгенерирована за 0.052 секунд. Запросов: 25.