Jump to content

Recommended Posts

Posted

Не удается создать марку пакетам по полю QoS:

iptables -t mangle -A PREROUTING -m tos --tos 0xb8 -j MARK --set-mark 0x46
или так 
iptables -t mangle -A PREROUTING -m u32 --u32 "0>>16&0xFF=0xb8" -j MARK --set-mark 0x46
Кажется что-то порезано в OPKG, но неизвестно как это использовать.

Прошу совета.

Posted (edited)
51 минуту назад, Дмитрий сказал:

iptables -t mangle -A PREROUTING -m u32 --u32 "0>>16&0xFF=0xb8" -j MARK --set-mark 0x46

установить компонент "Модули ядра подсистемы Netfilter"
делать
insmod /lib/modules/4.9-ndm-5/xt_u32.ko
потом уже правило с u32

Edited by Denis P
  • Upvote 1
Posted
18 часов назад, Denis P сказал:

установить компонент "Модули ядра подсистемы Netfilter"
делать
insmod /lib/modules/4.9-ndm-5/xt_u32.ko
потом уже правило с u32

Спасибо!!! u32 стал доступен!

Надеюсь insmod /lib/modules/4.9-ndm-5/xt_u32.ko разовый вызов, а не после каждого старта роутера.

Требуется ли выполнять следующие рекомендации или будет работать с ускорителями?

no ppe software
no ppe hardware

 

Скрипт:

mkdir -p /opt/etc/ndm/netfilter.d
cat << 'EOF' > /opt/etc/ndm/netfilter.d/010-qos-mark.sh
#!/bin/sh

[ "$type" != "iptables" ] && exit 0

# Восстанавливаем маркировку пакетов в таблице mangle
if [ "$table" == "mangle" ]; then
    iptables -t mangle -D PREROUTING -m u32 --u32 "0>>16&0xFF=0xb8" -j MARK --set-mark 0x46 2>/dev/null
    iptables -t mangle -A PREROUTING -m u32 --u32 "0>>16&0xFF=0xb8" -j MARK --set-mark 0x46
fi

# Восстанавливаем маскарадинг в таблице nat
if [ "$table" == "nat" ]; then
    iptables -t nat -D POSTROUTING -m mark --mark 0x46 -j MASQUERADE 2>/dev/null
    iptables -t nat -A POSTROUTING -m mark --mark 0x46 -j MASQUERADE
fi
EOF
chmod +x /opt/etc/ndm/netfilter.d/010-qos-mark.sh

 

Posted
1 час назад, Дмитрий сказал:

Надеюсь insmod /lib/modules/4.9-ndm-5/xt_u32.ko разовый вызов, а не после каждого старта роутера.

Не надейтесь, а пишите в инит скрипт

  • Upvote 1
Posted
2 часа назад, Дмитрий сказал:

Надеюсь insmod /lib/modules/4.9-ndm-5/xt_u32.ko разовый вызов, а не после каждого старта роутера.

добавьте в ваш скрипт что-то подобное:

if ! lsmod 2>/dev/null | grep -q '^xt_u32'; then
    insmod /lib/modules/$(uname -r)/xt_u32.ko 2>/dev/null || true
fi


с маркировкой пакетов и включенными ускорителями проблем быть не должно

  • Upvote 1

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.

  • Recently Browsing   0 members

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

Important Information

This site uses cookies. By clicking "I accept" or continuing to browse the site, you authorize their use in accordance with the Privacy Policy.