<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Iptables SNAT. Не попадают пакеты в цепочку nat POSTROUTING</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID10/5353.html</link>
    <description>Добрый день! Есть такая схемка:&lt;br&gt;&lt;br&gt;client -&amp;gt; proxy:5060 -&amp;gt; server:5060&lt;br&gt;&lt;br&gt;Приложение клиента общается с proxy:tcp:5060. Прокси работает прозрачно, используя TPROXY (реализовано через haproxy), т.е. он берёт IP:PORT клиента, и при пересылке пакетов на server, подставляет их как SOURCE. Сервер видит, что отправитель пакетов - client, и отправляет пакеты на client:IP:PORT, НО cо своим адресом в поле SOURCE (server:tcp:5060), следовательно, клиент не сможет обработать эти сообщения, т.к. он ждёт ответа от proxy:tcp:5060. И поэтому я хочу научить сервер подставлять в поле SOURCE ip адрес proxy сервера (proxy:tcp:5060)&lt;br&gt;&lt;br&gt;Добавляю правило:&lt;br&gt;&#091;code&#093;# Generated by iptables-save v1.3.5 on Thu Nov  5 14:38:24 2015&lt;br&gt;*mangle&lt;br&gt;:PREROUTING ACCEPT &#091;710363:567027885&#093;&lt;br&gt;:INPUT ACCEPT &#091;704372:566539955&#093;&lt;br&gt;:FORWARD ACCEPT &#091;0:0&#093;&lt;br&gt;:OUTPUT ACCEPT &#091;753088:91182712&#093;&lt;br&gt;:POSTROUTING ACCEPT &#091;753309:91198200&#093;&lt;br&gt;COMMIT&lt;br&gt;# Completed on Thu Nov  5 14:38:24 2015&lt;br&gt;# Generated by iptables-save v1.3.5 on Thu Nov  5 14:38:24 2015&lt;br&gt;*nat&lt;br&gt;:PREROUTING </description>

<item>
    <title>Iptables SNAT. Не попадают пакеты в цепочку nat POSTROUTING (reader)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID10/5353.html#3</link>
    <pubDate>Sat, 07 Nov 2015 07:59:29 GMT</pubDate>
    <description>snat в output в сторону клиента пробовали?&lt;br&gt;</description>
</item>

<item>
    <title>Iptables SNAT. Не попадают пакеты в цепочку nat POSTROUTING (gunb1rd)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID10/5353.html#2</link>
    <pubDate>Fri, 06 Nov 2015 07:25:40 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt; Две сроки выше противоречат. Если &quot;$чего-то-там прозрачно&quot;, то клиент должен соединяться &lt;br&gt;&amp;gt; с server:5060 и имеет полное право ничего не знать об прокси, &lt;br&gt;&amp;gt; прозрачности, NAT-ах.&lt;br&gt;&amp;gt;&amp;gt; адресом в поле SOURCE (server:tcp:5060), следовательно, клиент не сможет обработать эти &lt;br&gt;&amp;gt;&amp;gt; сообщения, т.к. он ждёт ответа от proxy:tcp:5060. И поэтому я хочу &lt;br&gt;&amp;gt;&amp;gt; научить сервер подставлять в поле SOURCE ip адрес proxy сервера (proxy:tcp:5060) &lt;br&gt;&amp;gt; Да, Вы делаете что-то не так. Либо &quot;&#091;клиент&#093; ждёт ответа от proxy:tcp:5060&quot;, &lt;br&gt;&amp;gt; либо &quot;$чего-то-там прозрачно&quot;. Никаких смесей и блендов.&lt;br&gt;&amp;gt;&amp;gt; Добавляю правило: &lt;br&gt;&amp;gt; Проблема не а правилах.&lt;br&gt;&lt;br&gt;Кароче. Мне нужно отправлять пакеты на один сервер (сервер A), там это дело будет проксироваться (на сервер B с подменой src ip), и получать ответы от другого (сервер C)&lt;br&gt;&lt;br&gt;Нашел способ использовать для этого stateless nat используя tc и подменяя src ip сервера C на ip сервера А, НО текущая версия ядра на сервере С, похоже, этого не желает делать:&lt;br&gt;&lt;br&gt;&#091;code&#093;&lt;br&gt;# tc filter</description>
</item>

<item>
    <title>Iptables SNAT. Не попадают пакеты в цепочку nat POSTROUTING (Andrey Mitrofanov)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID10/5353.html#1</link>
    <pubDate>Thu, 05 Nov 2015 14:28:34 GMT</pubDate>
    <description>&amp;gt; client -&amp;gt; proxy:5060 -&amp;gt; server:5060 &lt;br&gt;&amp;gt; Приложение клиента общается с proxy:tcp:5060.&lt;br&gt;&amp;gt; Прокси работает прозрачно, используя TPROXY &lt;br&gt;&lt;br&gt;Две сроки выше противоречат. Если &quot;$чего-то-там прозрачно&quot;, то клиент должен соединяться с server:5060 и имеет полное право ничего не знать об прокси, прозрачности, NAT-ах.&lt;br&gt;&lt;br&gt;&amp;gt; адресом в поле SOURCE (server:tcp:5060), следовательно, клиент не сможет обработать эти &lt;br&gt;&amp;gt; сообщения, т.к. он ждёт ответа от proxy:tcp:5060. И поэтому я хочу &lt;br&gt;&amp;gt; научить сервер подставлять в поле SOURCE ip адрес proxy сервера (proxy:tcp:5060) &lt;br&gt;&lt;br&gt;Да, Вы делаете что-то не так. Либо &quot;&#091;клиент&#093; ждёт ответа от proxy:tcp:5060&quot;, либо &quot;$чего-то-там прозрачно&quot;. Никаких смесей и блендов.&lt;br&gt;&lt;br&gt;&amp;gt; Добавляю правило: &lt;br&gt;&lt;br&gt;Проблема не а правилах.&lt;br&gt;</description>
</item>

</channel>
</rss>
