Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:0
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:4
Форум » starterkit.ru » Embedded Linux
Как включить поддержку connection tracking NAT RTSP
sasamy
Добавлено 13.11.2018 17:02 Сообщение: 11
sasamy
4.70

Пункты: 76914
Регистрация: 14.08.2009
Цитата


1. Добавили команду:
iptables -t raw -I PREROUTING -p tcp --dport 55451 -j CT --helper rtsp

Ошибка выполнения:
iptables: No chain/target/match by that name.
...
Чего-то не хватает в команде? или в ядре?


В ядре не хватает

make linux-menuconfig

[*] Networking support --->
Networking options --->
[*] Network packet filtering framework (Netfilter) --->
[*] Advanced netfilter configuration
Core Netfilter Configuration --->
<M> "CT" target support

IP: Netfilter Configuration --->
<M> raw table support (required for NOTRACK/TRACE)
Спуститься к концу Подняться к началу
Персональная информация
OMu4KA
Добавлено 14.11.2018 09:21 Редактировалось 14.11.2018 09:22 Сообщение: 12
OMu4KA
0

Пункты: 1057
Регистрация: 12.11.2018
Цитата

В ядре не хватает

make linux-menuconfig

[*] Networking support --->
Networking options --->
[*] Network packet filtering framework (Netfilter) --->
[*] Advanced netfilter configuration
Core Netfilter Configuration --->
<M> "CT" target support

IP: Netfilter Configuration --->
<M> raw table support (required for NOTRACK/TRACE)


1. Добавили в конфигурацию:
<M> "CT" target support
<M> raw table support (required for NOTRACK/TRACE)

2. Просмотрели
zcat /proc/config.gz:
CONFIG_NETFILTER_XT_TARGET_CT=m
CONFIG_IP_NF_RAW=m

3. Выполнили команды:
# modprobe nf_conntrack_rtsp ports=55451
# modprobe nf_nat_rtsp
# iptables -t raw -I PREROUTING -p tcp --dport 55451 -j CT --helper rtsp
без ошибок

4. Результат не изменился, потока данных нет... :-(
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 14.11.2018 10:12 Редактировалось 14.11.2018 10:35 Сообщение: 13
sasamy
4.70

Пункты: 76914
Регистрация: 14.08.2009
Цитата

3. Выполнили команды:
# modprobe nf_conntrack_rtsp ports=55451
# modprobe nf_nat_rtsp


попробуйте просто

modprobe nf_nat_rtsp

и потом через iptables привяхывайте на нужные порты. Если есть параметр ports имя хелпера изменяется

Код

tmpname = &rtsp_names[i][0];
if (ports[i] == RTSP_PORT) {
sprintf(tmpname, "rtsp");
} else {
sprintf(tmpname, "rtsp-%d", i);
}


https://github.com/maru-sama/rtsp-linux/blob/master/nf_conntrack_rtsp.c#L550

параметр модуля - это устаревший нерекомендуемый метод привязки

https://home.regit.org/netfilter-en/secure-use-of-helpers/

Цитата

Using the CT target to refine security
...
To declare it, we can simply do

iptables -A PREROUTING -t raw -p tcp --dport 2121 \\
-d 1.2.3.4 -j CT --helper ftp

Therefore, the use of the module options is NOT recommended anymore – please use the CT target instead.
Спуститься к концу Подняться к началу
Персональная информация
OMu4KA
Добавлено 14.11.2018 11:18 Сообщение: 14
OMu4KA
0

Пункты: 1057
Регистрация: 12.11.2018
Цитата

попробуйте просто

modprobe nf_nat_rtsp

и потом через iptables прихватывайте на нужные порты.


Попробовали:
# modprobe nf_nat_rtsp
# iptables -t raw -I PREROUTING -p tcp --dport 55451 --dst $REAL_IP -j CT --helper rtsp

Результат тот же :-(
Спуститься к концу Подняться к началу
Персональная информация
OMu4KA
Добавлено 20.11.2018 08:07 Сообщение: 15
OMu4KA
0

Пункты: 1057
Регистрация: 12.11.2018
Здравствуйте.

Проблема так и не решена. Помогите, пожалуйста...
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 20.11.2018 09:45 Редактировалось 20.11.2018 09:53 Сообщение: 16
sasamy
4.70

Пункты: 76914
Регистрация: 14.08.2009
Цитата
Проблема так и не решена.


проблема в ваших настройках сети, у себя я делал без ограничения соединений (не ставил политику DROP по умолчанию)

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 5541 -j DNAT --to-destination 192.168.10.1:554

iptables -t nat -A POSTROUTING --dst 192.168.10.1 -p tcp --dport 554 -j SNAT --to-source 192.168.10.2

камера 192.168.10.1 <--> 192.168.10.2 (eth1) роутер (eth0) 192.168.0.136 <--> 192.168.0.2 PC

на плате с камерой RTSP сервер из gstreamer, на PC клиент vlc, работало и без RTSP хелпера, роутер - hola duo + AEEB с ядром 3.10.17
Спуститься к концу Подняться к началу
Персональная информация
OMu4KA
Добавлено 20.11.2018 10:55 Сообщение: 17
OMu4KA
0

Пункты: 1057
Регистрация: 12.11.2018
Цитата
на плате с камерой RTSP сервер из gstreamer


Что это значит? Нужно включить его в пакетах buildroot?
Спуститься к концу Подняться к началу
Персональная информация
OMu4KA
Добавлено 20.11.2018 13:44 Сообщение: 18
OMu4KA
0

Пункты: 1057
Регистрация: 12.11.2018
Выполняем следующие команды:

sysctl -w net.ipv4.ip_forward=1

modprobe -r nf_nat_rtsp
modprobe -r nf_conntrack_rtsp
modprobe nf_nat_rtsp

iptables -F
iptables -F -t nat
iptables -F -t raw
iptables -S

iptables -t nat -A PREROUTING -i $EXT_IF --dst $REAL_IP -p tcp --dport 55451 -j DNAT --to-destination $IP_CAM:554
iptables -t nat -A POSTROUTING --dst $IP_CAM -p tcp --dport 554 -j SNAT --to-source $LOCAL_IP
iptables -t nat -A OUTPUT --dst $REAL_IP -p tcp --dport 55451 -j DNAT --to-destination $IP_CAM:554
iptables -t raw -A PREROUTING -p tcp --dport 55451 --dst $REAL_IP -j CT --helper rtsp


У нас плата imx6-ind-oem, камера TrafiCam x-stream, на PC клиент vlc, работает даже без RTSP хелпера на стандартном порту 554, но нет потока данных при установке внешнего порта 55451.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 21.11.2018 01:20 Редактировалось 21.11.2018 01:29 Сообщение: 19
sasamy
4.70

Пункты: 76914
Регистрация: 14.08.2009
Цитата
Выполняем следующие команды:
....
работает даже без RTSP хелпера на стандартном порту 554, но нет потока данных при установке внешнего порта 55451.


У меня почти тоже самое за исключением непонятного правила в таблице OUTPUT - с двумя изернетами работает с любым внешним портом. Мою конфигурацию вы можете легко воспроизвести и проверить, мне без ваших модема и вашего провайдера - нет, может дело как раз в них.
Спуститься к концу Подняться к началу
Персональная информация
OMu4KA
Добавлено 21.11.2018 06:58 Сообщение: 20
OMu4KA
0

Пункты: 1057
Регистрация: 12.11.2018
Цитата
У меня почти тоже самое за исключением непонятного правила в таблице OUTPUT - с двумя изернетами работает с любым внешним портом. Мою конфигурацию вы можете легко воспроизвести и проверить, мне без ваших модема и вашего провайдера - нет, может дело как раз в них.


Спасибо
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux