Загрузка данных


Отлично! Скрипт отработал как надо: nslookup до 10.10.23.1 теперь работает, петля разорвана, и интернет у тебя появился. Очередь пакетов в netstat сильно уменьшилась (с 213 248 до 4352, и это остатки, которые dnsmasq постепенно переварит или сбросит).
Главное — мы нашли виновника, который жестко прописывает правила: это файл /etc/nftables.d/sing-box.nft.
Чтобы сделать это исправление постоянным (переживающим перезагрузку), нужно добавить исключения прямо в этот файл.
### Шаг 1. Патчим файл sing-box.nft
Скопируй и выполни эту команду. Она использует sed, чтобы автоматически вставить правила возврата (исключения для 53 порта) прямо перед строкой с tproxy to:
```bash
sed -i '/tproxy to :12345/i \    udp dport 53 return\n    tcp dport 53 return' /etc/nftables.d/sing-box.nft

```
### Шаг 2. Проверяем изменения
Убедимся, что правила встали на свое место:
```bash
cat /etc/nftables.d/sing-box.nft | grep -B 2 -A 2 "tproxy to"

```
В выводе ты должен увидеть что-то вроде этого:
```nft
    udp dport 53 return
    tcp dport 53 return
    meta l4proto { tcp, udp } tproxy to :12345 meta mark set 1

```
### Шаг 3. Перезагружаем фаервол
Чтобы новые правила из файла вступили в силу:
```bash
/etc/init.d/firewall restart
/etc/init.d/sing-box restart
/etc/init.d/dnsmasq restart

```
Теперь, даже если ты перезагрузишь роутер, трафик на 53 порт (DNS) всегда будет обходить прозрачный прокси sing-box и идти напрямую в твой dnsmasq (а оттуда — в настроенный тобой smartdns).
Всё получилось?