Bug 11130

Summary: Bad pattern for VE service forwarding
Product: Sisyphus Reporter: Sir Raorn <raorn>
Component: alterator-ovzAssignee: Konstantin A Lepikhov (L.A. Kostis) <lakostis>
Status: CLOSED WONTFIX QA Contact: qa-sisyphus
Severity: normal    
Priority: P2 CC: aspsk, inger, ldv, mike
Version: unstable   
Hardware: all   
OS: Linux   

Description Sir Raorn 2007-03-17 19:00:42 MSK
get_dnat_port()
...
        echo "$tmp" | sed -e "s/.*dpt:\([0-9][0-9][0-9][0-9]\)\ .*/\1/g"

Это приводит к следующим забавным эффектам (101 = openntpd, 102 =
caching-nameserver):

# iptables -t nat -nL PREROUTING
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
DNAT       tcp  --  0.0.0.0/0            10.0.0.50           tcp dpt:65080
to:192.0.2.101:8080 

# alterator-cmdline /ovz-ve/101/ports action list
(("/ovz-ve/101/ports/httpd2" name "httpd2" lport "8080" rport "DNAT       tcp 
--  0.0.0.0/0            10.0.0.50           tcp dpt:65080 to:192.0.2.101:8080 "
forward #t) ("/ovz-ve/101/ports/sshd" name "sshd" lport "22" rport "DNAT      
tcp  --  0.0.0.0/0            10.0.0.50           tcp dpt:65080
to:192.0.2.101:8080 " forward #t))

# alterator-cmdline /ovz-ve/102/ports action list
(("/ovz-ve/102/ports/httpd2" name "httpd2" lport "8080" rport "DNAT       tcp 
--  0.0.0.0/0            10.0.0.50           tcp dpt:65080 to:192.0.2.101:8080 "
forward #t) ("/ovz-ve/102/ports/named" name "named" lport "53" rport "DNAT     
 tcp  --  0.0.0.0/0            10.0.0.50           tcp dpt:65080
to:192.0.2.101:8080 " forward #t) ("/ovz-ve/102/ports/sshd" name "sshd" lport
"22" rport "DNAT       tcp  --  0.0.0.0/0            10.0.0.50           tcp
dpt:65080 to:192.0.2.101:8080 " forward #t))
Comment 1 Sir Raorn 2007-03-17 21:07:23 MSK
Забавный артефакт номер два (я заменил \d\d\d\d на \d+):

# alterator-cmdline /ovz-ve/101/ports action list
(("/ovz-ve/101/ports/httpd2" name "httpd2" lport "8080" rport "65080" forward
#t) ("/ovz-ve/101/ports/sshd" name "sshd" lport "22" rport "65080" forward #t))

Причина:

# ip a sh dev eth0 | grep inet
    inet 10.0.0.50/8 brd 10.255.255.255 scope global eth0
    inet 194.x.x.x/32 scope global eth0
Comment 2 inger@altlinux.org 2007-03-19 10:09:48 MSK
на мантейнера
Comment 3 Konstantin A Lepikhov (L.A. Kostis) 2007-03-20 00:17:09 MSK
(In reply to comment #1)
> Забавный артефакт номер два (я заменил \d\d\d\d на \d+):
> 
> # alterator-cmdline /ovz-ve/101/ports action list
> (("/ovz-ve/101/ports/httpd2" name "httpd2" lport "8080" rport "65080" forward
> #t) ("/ovz-ve/101/ports/sshd" name "sshd" lport "22" rport "65080" forward #t))
> 
> Причина:
> 
> # ip a sh dev eth0 | grep inet
>     inet 10.0.0.50/8 brd 10.255.255.255 scope global eth0
>     inet 194.x.x.x/32 scope global eth0
т.е. там alias'ы висят на одном интерфейсе? Придется тогда ручку приделать для
выбора ip, на который делать SNAT.
Comment 4 Sir Raorn 2007-03-20 19:24:05 MSK
Есть мнение, что в этом модуле подобный функционал просто лишний.

1. жёстко привязан к 192.0.2.0/24
2. поддерживает только TCP сервисы (по опыту использования ntpd и named)
3. пересекается с (будущим?) alterator-firewall и другими средствами настройки
iptables
4. не удаляет запись при изменении внешнего порта (unconfirmed)

Если это чинить и расширять - будет очередной монстр, проще написать отдельный
модуль или использовать уже существующие.  Максимум что тут можно оставить -
проброс ssh и httpd-alterator наружу при условии использования конфигурации по
умолчанию.
Comment 5 Dmitry V. Levin 2007-03-31 00:55:06 MSD
Спасибо Стасу, httpd-alterator пробрасывать уже не нужно.
Comment 6 Konstantin A Lepikhov (L.A. Kostis) 2007-04-04 00:02:20 MSD
Частично данный баг исправлен в 0.3-alt2, как он теперь воспроизводится?
Comment 7 Dmitry V. Levin 2007-04-07 04:18:01 MSD
ping
Comment 8 Dmitry V. Levin 2007-04-21 04:50:45 MSD
В 0.4-alt1 многое изменилось, просьба перепроверить.
Comment 9 Dmitry V. Levin 2007-04-24 04:26:47 MSD
Между прочим, вычислить udp-порт совсем непросто.
Сейчас в ntp и bind-контейнерах udp-форвардинг не работает.
Comment 10 Michael Shigorin 2009-09-29 01:32:54 MSD
I'm going to close remaining bugs on alterator-ovz which is no more in Sisyphus; please look whether this one might pop up in alterator-mkve (or whatever related) too.
Comment 11 aspsk 2009-09-29 18:29:32 MSD
OK
Comment 12 Michael Shigorin 2009-09-30 04:02:38 MSD
done