<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Nftables on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/nftables/</link>
        <description>Recent content in Nftables on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Sun, 18 May 2025 15:27:30 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/nftables/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>podkop</title>
        <link>https://producthunt.programnotes.cn/en/p/podkop/</link>
        <pubDate>Sun, 18 May 2025 15:27:30 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/podkop/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1657652885037-d937b302435a?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NDc1NTMxMjl8&amp;ixlib=rb-4.1.0" alt="Featured image of post podkop" /&gt;&lt;h1 id=&#34;itdoginfopodkop&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/itdoginfo/podkop&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;itdoginfo/podkop&lt;/a&gt;
&lt;/h1&gt;&lt;h1 id=&#34;вещи-которые-вам-нужно-знать-перед-установкой&#34;&gt;Вещи, которые вам нужно знать перед установкой
&lt;/h1&gt;&lt;ul&gt;
&lt;li&gt;Это бета-версия, которая находится в активной разработке. Из версии в версию что-то может меняться.&lt;/li&gt;
&lt;li&gt;При возникновении проблем, нужен технически грамотный фидбэк в чат.&lt;/li&gt;
&lt;li&gt;При обновлении &lt;strong&gt;обязательно&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://podkop.net/docs/clearbrowsercache/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;сбрасывайте кэш LuCI&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Также при обновлении всегда заходите в конфигурацию и проверяйте свои настройки. Конфигурация может измениться.&lt;/li&gt;
&lt;li&gt;Необходимо минимум 15МБ свободного места на роутере. Роутеры с флешками на 16МБ сразу мимо.&lt;/li&gt;
&lt;li&gt;При старте программы редактируется конфиг Dnsmasq.&lt;/li&gt;
&lt;li&gt;Podkop редактирует конфиг sing-box. Обязательно сохраните ваш конфиг sing-box перед установкой, если он вам нужен.&lt;/li&gt;
&lt;li&gt;Информация здесь может быть устаревшей. Все изменения фиксируются в &lt;a class=&#34;link&#34; href=&#34;https://t.me/itdogchat/81758/420321&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;телеграм-чате&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://podkop.net/docs/diagnostics/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Если у вас не что-то не работает.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Если у вас установлен Getdomains, &lt;a class=&#34;link&#34; href=&#34;https://github.com/itdoginfo/domain-routing-openwrt?tab=readme-ov-file#%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82-%D0%B4%D0%BB%D1%8F-%D1%83%D0%B4%D0%B0%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;его следует удалить&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;документация&#34;&gt;Документация
&lt;/h1&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://podkop.net/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://podkop.net/&lt;/a&gt;&lt;/p&gt;
&lt;h1 id=&#34;установка-podkop&#34;&gt;Установка Podkop
&lt;/h1&gt;&lt;p&gt;Полная информация в &lt;a class=&#34;link&#34; href=&#34;https://podkop.net/docs/install/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;документации&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Вкратце, достаточно одного скрипта для установки:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sh &amp;lt;(wget -O - https://raw.githubusercontent.com/itdoginfo/podkop/refs/heads/main/install.sh)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Для обновления:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sh &amp;lt;(wget -qO- https://raw.githubusercontent.com/itdoginfo/podkop/refs/heads/main/install.sh) --upgrade
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h1 id=&#34;todo&#34;&gt;ToDo
&lt;/h1&gt;&lt;p&gt;Этот раздел не означает задачи, которые нужно брать и делать. Это общий список хотелок. Если вы хотите помочь, пожалуйста, спросите сначала в телеграмме.&lt;/p&gt;
&lt;p&gt;Основные задачи в issues.&lt;/p&gt;
&lt;h2 id=&#34;рефактор&#34;&gt;Рефактор
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Очевидные повторения в &lt;code&gt;/usr/bin/podkop&lt;/code&gt; загнать в переменые&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Возможно поменять структуру&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;списки&#34;&gt;Списки
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Speedtest&lt;/li&gt;
&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Google AI&lt;/li&gt;
&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Google PlayMarket. Здесь уточнить, что точно не работает через корректную настройку FakeIP, а не dnsmasq+nft.&lt;/li&gt;
&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Hetzner ASN (AS24940)&lt;/li&gt;
&lt;li&gt;&lt;input checked=&#34;&#34; disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; OVH ASN (AS16276)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;будущее&#34;&gt;Будущее
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; После наполнения вики про туннели, убрать всё что связано с их установкой из скрипта. Только с AWG что-то решить, лучше чтоб был скрипт в сторонем репозитории.&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Подписка. Здесь нужна реализация, чтоб для каждой секции помимо ручного выбора, был выбор фильтрации по тегу. Например, для main выбираем ключевые слова NL, DE, FI. А для extra секции фильтруем по RU. И создаётся outbound c urltest в которых перечислены outbound из фильтров.&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Опция, когда все запросы (с роутера в первую очередь), а не только br-lan идут в прокси. С этим связана #95. Требуется много переделать для nftables.&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Весь трафик в Proxy\VPN. Вопрос, что делать с экстрасекциями в этом случае. FakeIP здесь скорее не нужен, а значит только main секция остаётся. Всё что касается fakeip проверок, придётся выключать в этом режиме.&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Поддержка Source format. Нужна расшифровка в json и если присуствуют подсети, заносить их в custom subnet nftset.&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Переделывание функции формирования кастомных списков в JSON. Обрабатывать сразу скопом, а не по одному.&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; При успешном запуске переходит в фоновый режим и следит за состоянием sing-box. Если вдруг идёт exit 1, выполняется dnsmasq restore и снова следит за состоянием. Вопрос в том, как это искусcтвенно провернуть. Попробовать положить прокси и посмотреть, останется ли работать DNS в этом случае. И здесь, вероятно, можно обойтись триггером в init.d.&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Галочка, которая режет доступ к doh серверам.&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; IPv6. Только после наполнения Wiki.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;тесты&#34;&gt;Тесты
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Unit тесты (BATS)&lt;/li&gt;
&lt;li&gt;&lt;input disabled=&#34;&#34; type=&#34;checkbox&#34;&gt; Интеграционые тесты бекенда (OpenWrt rootfs + BATS)&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        
    </channel>
</rss>
