<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>11130</bug_id>
          
          <creation_ts>2007-03-17 19:00:39 +0300</creation_ts>
          <short_desc>Bad pattern for VE service forwarding</short_desc>
          <delta_ts>2009-09-30 04:02:49 +0400</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>alterator-ovz</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sir Raorn">raorn</reporter>
          <assigned_to name="Konstantin A Lepikhov (L.A. Kostis)">lakostis</assigned_to>
          <cc>aspsk</cc>
    
    <cc>inger</cc>
    
    <cc>ldv</cc>
    
    <cc>mike</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>46814</commentid>
    <comment_count>0</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2007-03-17 19:00:42 +0300</bug_when>
    <thetext>get_dnat_port()
...
        echo &quot;$tmp&quot; | sed -e &quot;s/.*dpt:\([0-9][0-9][0-9][0-9]\)\ .*/\1/g&quot;

Это приводит к следующим забавным эффектам (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
((&quot;/ovz-ve/101/ports/httpd2&quot; name &quot;httpd2&quot; lport &quot;8080&quot; rport &quot;DNAT       tcp 
--  0.0.0.0/0            10.0.0.50           tcp dpt:65080 to:192.0.2.101:8080 &quot;
forward #t) (&quot;/ovz-ve/101/ports/sshd&quot; name &quot;sshd&quot; lport &quot;22&quot; rport &quot;DNAT      
tcp  --  0.0.0.0/0            10.0.0.50           tcp dpt:65080
to:192.0.2.101:8080 &quot; forward #t))

# alterator-cmdline /ovz-ve/102/ports action list
((&quot;/ovz-ve/102/ports/httpd2&quot; name &quot;httpd2&quot; lport &quot;8080&quot; rport &quot;DNAT       tcp 
--  0.0.0.0/0            10.0.0.50           tcp dpt:65080 to:192.0.2.101:8080 &quot;
forward #t) (&quot;/ovz-ve/102/ports/named&quot; name &quot;named&quot; lport &quot;53&quot; rport &quot;DNAT     
 tcp  --  0.0.0.0/0            10.0.0.50           tcp dpt:65080
to:192.0.2.101:8080 &quot; forward #t) (&quot;/ovz-ve/102/ports/sshd&quot; name &quot;sshd&quot; lport
&quot;22&quot; rport &quot;DNAT       tcp  --  0.0.0.0/0            10.0.0.50           tcp
dpt:65080 to:192.0.2.101:8080 &quot; forward #t))</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46827</commentid>
    <comment_count>1</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2007-03-17 21:07:23 +0300</bug_when>
    <thetext>Забавный артефакт номер два (я заменил \d\d\d\d на \d+):

# alterator-cmdline /ovz-ve/101/ports action list
((&quot;/ovz-ve/101/ports/httpd2&quot; name &quot;httpd2&quot; lport &quot;8080&quot; rport &quot;65080&quot; forward
#t) (&quot;/ovz-ve/101/ports/sshd&quot; name &quot;sshd&quot; lport &quot;22&quot; rport &quot;65080&quot; 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</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46880</commentid>
    <comment_count>2</comment_count>
    <who name="inger@altlinux.org">inger</who>
    <bug_when>2007-03-19 10:09:48 +0300</bug_when>
    <thetext>на мантейнера</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46935</commentid>
    <comment_count>3</comment_count>
    <who name="Konstantin A Lepikhov (L.A. Kostis)">lakostis</who>
    <bug_when>2007-03-20 00:17:09 +0300</bug_when>
    <thetext>(In reply to comment #1)
&gt; Забавный артефакт номер два (я заменил \d\d\d\d на \d+):
&gt; 
&gt; # alterator-cmdline /ovz-ve/101/ports action list
&gt; ((&quot;/ovz-ve/101/ports/httpd2&quot; name &quot;httpd2&quot; lport &quot;8080&quot; rport &quot;65080&quot; forward
&gt; #t) (&quot;/ovz-ve/101/ports/sshd&quot; name &quot;sshd&quot; lport &quot;22&quot; rport &quot;65080&quot; forward #t))
&gt; 
&gt; Причина:
&gt; 
&gt; # ip a sh dev eth0 | grep inet
&gt;     inet 10.0.0.50/8 brd 10.255.255.255 scope global eth0
&gt;     inet 194.x.x.x/32 scope global eth0
т.е. там alias&apos;ы висят на одном интерфейсе? Придется тогда ручку приделать для
выбора ip, на который делать SNAT.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46947</commentid>
    <comment_count>4</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2007-03-20 19:24:05 +0300</bug_when>
    <thetext>Есть мнение, что в этом модуле подобный функционал просто лишний.

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

Если это чинить и расширять - будет очередной монстр, проще написать отдельный
модуль или использовать уже существующие.  Максимум что тут можно оставить -
проброс ssh и httpd-alterator наружу при условии использования конфигурации по
умолчанию.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>47454</commentid>
    <comment_count>5</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2007-03-31 00:55:06 +0400</bug_when>
    <thetext>Спасибо Стасу, httpd-alterator пробрасывать уже не нужно.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>47813</commentid>
    <comment_count>6</comment_count>
    <who name="Konstantin A Lepikhov (L.A. Kostis)">lakostis</who>
    <bug_when>2007-04-04 00:02:20 +0400</bug_when>
    <thetext>Частично данный баг исправлен в 0.3-alt2, как он теперь воспроизводится?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>48268</commentid>
    <comment_count>7</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2007-04-07 04:18:01 +0400</bug_when>
    <thetext>ping</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>49263</commentid>
    <comment_count>8</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2007-04-21 04:50:45 +0400</bug_when>
    <thetext>В 0.4-alt1 многое изменилось, просьба перепроверить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>49413</commentid>
    <comment_count>9</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2007-04-24 04:26:47 +0400</bug_when>
    <thetext>Между прочим, вычислить udp-порт совсем непросто.
Сейчас в ntp и bind-контейнерах udp-форвардинг не работает.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>100336</commentid>
    <comment_count>10</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2009-09-29 01:32:54 +0400</bug_when>
    <thetext>I&apos;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.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>100432</commentid>
    <comment_count>11</comment_count>
    <who name="aspsk">aspsk</who>
    <bug_when>2009-09-29 18:29:32 +0400</bug_when>
    <thetext>OK</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>100472</commentid>
    <comment_count>12</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2009-09-30 04:02:38 +0400</bug_when>
    <thetext>done</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>