mirror of
https://github.com/bol-van/zapret.git
synced 2024-12-02 14:40:52 +03:00
nft openwrt : resolve physdev behind pppoe for hw offload
This commit is contained in:
parent
be077c5ae0
commit
9f303c2748
@ -309,6 +309,10 @@ nft_fill_ifsets()
|
|||||||
# $1 - space separated lan interface names
|
# $1 - space separated lan interface names
|
||||||
# $2 - space separated wan interface names
|
# $2 - space separated wan interface names
|
||||||
# $3 - space separated wan6 interface names
|
# $3 - space separated wan6 interface names
|
||||||
|
# 4,5,6 is needed for pppoe+openwrt case. looks like it's not easily possible to resolve ethernet device behind a pppoe interface
|
||||||
|
# $4 - space separated lan physical interface names (optional)
|
||||||
|
# $5 - space separated wan physical interface names (optional)
|
||||||
|
# $6 - space separated wan6 physical interface names (optional)
|
||||||
|
|
||||||
local script i j ALLDEVS devs
|
local script i j ALLDEVS devs
|
||||||
|
|
||||||
@ -333,7 +337,7 @@ flush set inet $ZAPRET_NFT_TABLE lanif"
|
|||||||
nft_create_or_update_flowtable '' $ALLDEVS 2>/dev/null
|
nft_create_or_update_flowtable '' $ALLDEVS 2>/dev/null
|
||||||
;;
|
;;
|
||||||
hardware)
|
hardware)
|
||||||
ALLDEVS=$(unique $1 $2 $3)
|
ALLDEVS=$(unique $1 $2 $3 $4 $5 $6)
|
||||||
# first create unbound flowtable. may cause error in older nft version
|
# first create unbound flowtable. may cause error in older nft version
|
||||||
nft_create_or_update_flowtable 'offload' 2>/dev/null
|
nft_create_or_update_flowtable 'offload' 2>/dev/null
|
||||||
# then add elements. some of them can cause error because unsupported
|
# then add elements. some of them can cause error because unsupported
|
||||||
|
@ -217,17 +217,20 @@ flow_offloading_unexempt()
|
|||||||
|
|
||||||
nft_fill_ifsets_overload()
|
nft_fill_ifsets_overload()
|
||||||
{
|
{
|
||||||
local ifaces DLAN DWAN DWAN6
|
local ifaces DLAN DWAN DWAN6 PDLAN PDWAN PDWAN6
|
||||||
|
|
||||||
call_for_multiple_items network_get_device DLAN "$OPENWRT_LAN"
|
call_for_multiple_items network_get_device DLAN "$OPENWRT_LAN"
|
||||||
|
call_for_multiple_items network_get_physdev PDLAN "$OPENWRT_LAN"
|
||||||
|
|
||||||
network_find_wan4_all ifaces
|
network_find_wan4_all ifaces
|
||||||
call_for_multiple_items network_get_device DWAN "$ifaces"
|
call_for_multiple_items network_get_device DWAN "$ifaces"
|
||||||
|
call_for_multiple_items network_get_physdev PDWAN "$ifaces"
|
||||||
|
|
||||||
network_find_wan6_all ifaces
|
network_find_wan6_all ifaces
|
||||||
call_for_multiple_items network_get_device DWAN6 "$ifaces"
|
call_for_multiple_items network_get_device DWAN6 "$ifaces"
|
||||||
|
call_for_multiple_items network_get_physdev PDWAN6 "$ifaces"
|
||||||
|
|
||||||
nft_fill_ifsets "$DLAN" "$DWAN" "$DWAN6"
|
nft_fill_ifsets "$DLAN" "$DWAN" "$DWAN6" "$PDLAN" "$PDWAN" "$PDWAN6"
|
||||||
}
|
}
|
||||||
|
|
||||||
nft_fw_tpws4()
|
nft_fw_tpws4()
|
||||||
|
Loading…
Reference in New Issue
Block a user