Jump to content

TCP/IP over DNS Tunneling


Recommended Posts

Есть ли возможность сборки пакета к текущему кол-во пакетов Entware

1. iodine (Linux/*BSD/Win32, также имеются клиенты под Android, Maemo, WinMobile, Mac OS X)
http://ftp.debian.org/debian/pool/main/i/iodine/ - 20170115
iodine_0.7.0-7_mipsel.deb
iodine_0.7.0-7_mips.deb

2. dns2tcp
http://ftp.debian.org/debian/pool/main/d/dns2tcp/ - 20170307    
dns2tcp_0.5.2-1.1+b2_mipsel.deb
dns2tcp_0.5.2-1.1+b2_mips.deb

в OpenWRT пакет nstx, dns2tcp

 

Вдогонку нашел iodine в тек.репозитарии Entware

 

 

Edited by vasek00
  • Thanks 1
Link to comment
Share on other sites

Маленькая пока проблема : iodined

Скрытый текст

/opt/etc/init.d # iodined -c -f -D -P test 10.0.0.1 m***i.*****.**
Debug level 1 enabled, will stay in foreground.
Add more -D switches to set higher debug level.
Opened dns0
Setting IP of dns0 to 10.0.0.1
/opt/bin/sh: ifconfig: not found
/opt/etc/init.d #

при просмотре iodined

Скрытый текст

PATH=/sbin:/bin ifconfig %s %s %s netmask %s  Setting IP of %s to %s

PATH=/sbin:/bin ifconfig %s mtu %u 

естественно в данном месте /sbin или /bin не о каком ifconfig речи быть не может их в прошивке нет.

Клиент же что-то пытается, но правда сервера нет.

Скрытый текст

/opt/etc/init.d # iodine -f 10.0.0.2 m***i.*****.**
Enter password:
Opened dns0
Opened IPv4 UDP socket
Sending DNS queries for m***i.*****.** to 10.0.0.2
Autodetecting DNS query type (use -T to override).....................
iodine: No suitable DNS query type found. Are you connected to a network?
iodine: If you expect very long roundtrip delays, use -T explicitly.
iodine: (Also, connecting to an "ancient" version of iodined won't work.)

 

Edited by vasek00
  • Thanks 1
Link to comment
Share on other sites

2 минуты назад, TheBB сказал:

Текущий репозиторий - это какой из ...?

/ # opkg list | grep iodine
iodine - 0.7.0-2 - iodine client version
iodined - 0.7.0-2 - iodine server version
/ # 

 

Link to comment
Share on other sites

1 минуту назад, vasek00 сказал:

iodine - 0.7.0-2 - iodine client version iodined - 0.7.0-2 - iodine server version

В разных репах текущие версии одинаковые! Какой у Вас репозиторий - Entware-keenetic, Entware-3x или еще какой?

Link to comment
Share on other sites

18 минут назад, TheBB сказал:

Entware-Keenetic или Entware-ng-3x?

+

B Entware-ng-3x поправил.

ОК теперь в порядке

Скрытый текст

iodined -c -f -D -P test 10.0.0.1 m**i.*****.**
Debug level 1 enabled, will stay in foreground.
Add more -D switches to set higher debug level.
Opened dns0
Setting IP of dns0 to 10.0.0.1
Setting MTU of dns0 to 1130
Opened IPv4 UDP socket
Listening to dns for domain m**i.*****.**

dns0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:10.0.0.1  P-t-P:10.0.0.1  Mask:255.255.255.224
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1130  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

udp        0      0 0.0.0.0:53              0.0.0.0:*                           10378/iodined
 

байтики пока по dns0 не бегают, будем смотреть далее.

Edited by vasek00
Link to comment
Share on other sites

Смотреть так бинарник, это жесть. Но Вы оказались правы.В коде есть строки

#ifndef IFCONFIGPATH
#define IFCONFIGPATH "PATH=/sbin:/bin "
#endif

Проще всего, похоже добавить -DIFCONFIGPATH=\"PATH=/sbin:/bin:/opt/bin:/opt/sbin \" к TARGET_CFLAGS.

@TheBB - исправишь пакет?

Link to comment
Share on other sites

1 час назад, vasek00 сказал:

Маленький вопрос возможно ли добавить в репозитарий пакет - dns2tcp

Какие у него преимущества перед iodine? Не хочется плодить в репозитории софт с одинаковым функционалом.

Link to comment
Share on other sites

2 часа назад, TheBB сказал:

теперь слово за Entware-ng.

Перенес патч в -ng. Можно собрать и выложить для entware-keenetic. Для бОльшей части устройств этот патч не нужен (но и не мешает). Нужен для кинетиков, андроида и другой экзотики

Link to comment
Share on other sites

2 часа назад, Александр Рыжов сказал:

Какие у него преимущества перед iodine? Не хочется плодить в репозитории софт с одинаковым функционалом.

Не знаю даже как и сказать если они имеют разный функционал для реализации данной задачи.

Dns2tcp

Аналог NSTX но работает только с ТСР пакетами. На стороне клиента не чего не надо (сервер и клиент для Unix в комплекте). Минус отсутствие ssl но прикручивается ssl-tunnel , за тем исключением, что он пробрасывает лишь TCP-трафик.

Iodine

Более продвинутый, описание ее можно найти в интернете.

Тем не менее на http://ftp.debian.org/debian/pool/main/i/iodine идут оба пакета.

Link to comment
Share on other sites

4 часа назад, vasek00 сказал:

Маленький вопрос возможно ли добавить в репозитарий пакет - dns2tcp

Проверяйте - http://entware-3x.zyxmon.org/binaries/mipsel/test/dns2tcp_0.5.2-1_mipsel-3x.ipk

Обязательно отпишите, работает или нет. От этого зависит - включим ли в репу.

Link to comment
Share on other sites

C iodine(d) пока глухо, интерфейс dns0 как будто мертвый не одного байтика на прием и на передачу.

dns2tcp - попробую, как раз и надо сравнить что и как принцип.

 

Link to comment
Share on other sites

Пока тяжеловато но двигаемся (лишь бы в правильном направлении). Но фишка думаю пока в создании DNS зоны (конечно хоч.бесплатный с NS и А записью, при приклеивании от DDNS проблема с изменением в зоне и контроль на роутере хоть он и белый но RT. На другом роутере норм.белый но придется ехать до него).

Все оба пакета запускаются, но пока при связи дают проблему QUERY (Standard query) к указанному DNS. dns2tcp - вроде запустился то же хоть ругался на "Error socket.c:107 bind error" (ну тут понятно хотят монопольно 53 порт) а он маломальски к DNSMasq, хоть внешний и отвязан, при указании конкретного listen = хх.х.х.39 кажется запустился.

Скрытый текст

/opt/tmp # netstat -anp | grep :53
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      818/dnsmasq
tcp        0      0 192.168.1.1:53      0.0.0.0:*               LISTEN      818/dnsmasq
tcp        0      0 ::1:53                  :::*                    LISTEN      818/dnsmasq
udp        0      0 хх.хх.хх.39:53       0.0.0.0:*                           5912/dns2tcpd
udp        0      0 127.0.0.1:53            0.0.0.0:*                           818/dnsmasq
udp        0      0 192.168.1.1:53      0.0.0.0:*                           818/dnsmasq
udp        0      0 0.0.0.0:53188           0.0.0.0:*                           827/ndnproxy
udp        0      0 ::1:53                  :::*                                818/dnsmasq
/opt/tmp # ps | grep dns2tcpd

 5912 nobody    2552 S    dns2tcpd -f /opt/etc/dns2tcpd.conf

/opt/etc # cat dns2tcpd.conf
listen = хх.х.х.39
port = 53
user = nobody
chroot = /opt/tmp
domain = m**.*****.**
resources = ssh:127.0.0.1:22 , ssh2:127.0.0.1:23
pid_file = /opt/var/run/dns2tcp.pid

Тут туннеля нет, нашел какое то приложение для Windows - dns2tcpc.exe (1350K). Пока до ssh даже дело не дошло.

С iodine в виду того что по времени уже больше, да и клиент есть нормальный под Windows (можно сравнить запуски) запуск на нем и на роутере в качестве сервере дает один и тот же результат. Тунели поднимаются (от Windows - TAP от OpenVPN) но не стыкуются с клиентами. Опять же думаю упирается в коряво созданный DNS.

Но в обоих случаях запросы к DNS серверу идут странные не тот что стоит в запусках, а приклеенный к нему хост, например auth.xxx.DNS.xxx или во втором случае y**.xxx.DNS.xxx. И так как в данной зоне DNS нет такого host то едет ответ Name Error. Да еще и iptables настройки нужны, дял теун. dns0 на роутере.

Придется лезть в теорию данного процесса чуток по серьезней.

Edited by vasek00
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...