1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-feeds.git synced 2025-02-12 18:41:51 +00:00

Add initial DSCP data and comments for DSCP domains

This commit is contained in:
Ycarus 2019-04-18 09:10:06 +02:00
parent 42ac48a0cd
commit 8a014cf520
4 changed files with 234 additions and 29 deletions

View file

@ -28,4 +28,8 @@ t:value("cs6", translate("CS6 - Network routing"))
t:value("cs7", translate("CS7"))
t:value("ef", translate("EF Voice"))
c = s:option(Value, "comment", translate("Comment"))
c.optional = true
return m

View file

@ -0,0 +1,225 @@
config classify
option direction 'both'
option proto 'icmp'
option class 'cs5'
option comment 'ICMP'
config classify
option direction 'both'
option proto 'udp'
option class 'cs5'
option src_port '53,123,5353'
option comment 'DNS udp and NTP'
config classify
option direction 'both'
option proto 'tcp'
option class 'cs5'
option src_port '53,5353'
option comment 'DNS tcp'
config domains
option name 'googlevideo.com'
option class 'cs4'
option comment 'Youtube'
config domains
option name 'nflxvideo.net'
option class 'cs4'
option comment 'NetFlix'
config domains
option name 's3.ll.dash.row.aiv-cdn.net'
option class 'cs4'
option comment 'AmazonVideo'
config domains
option name 'd25xi40x97liuc.cloudfront.net'
option class 'cs4'
option comment 'AmazonVideo'
config domains
option name 'aiv-delivery.net'
option class 'cs4'
option comment 'AmazonVideo'
config domains
option name 'fbcdn.net'
option class 'cs4'
option comment 'Facebook'
config domains
option name 'ttvnw.net'
option class 'cs4'
option comment 'Twitch'
config domains
option name 'vevo.com'
option class 'cs4'
option comment 'VeVo'
config domains
option name 'audio-fa.scdn.cot'
option class 'cs4'
option comment 'Spotify'
config domains
option name 'deezer.com'
option class 'cs4'
option comment 'Deezer'
config domains
option name 'sndcdn.com'
option class 'cs4'
option comment 'SoundCloud'
config domains
option name 'last.fm'
option class 'cs4'
option comment 'last.fm'
config domains
option name 'v.redd.it'
option class 'cs4'
option comment 'reddit videos'
config domains
option name 'ttvnw.net'
option class 'cs4'
option comment 'twitch.tv'
config domains
option name 'googletagmanager.com'
option class 'cs2'
option comment 'cdn'
config domains
option name 'googleusercontent.com'
option class 'cs2'
option comment 'cdn'
config domains
option name 'google.com'
option class 'cs2'
option comment 'cdn'
config domains
option name 'fbcdn.net'
option class 'cs2'
option comment 'cdn'
config domains
option name 'akamaihd.net'
option class 'cs2'
option comment 'cdn'
config domains
option name 'whatsapp.net'
option class 'cs2'
option comment 'cdn'
config domains
option name 'whatsapp.com'
option class 'cs2'
option comment 'cdn'
config domains
option name 'googleapis.com'
option class 'cs2'
option comment 'cdn'
config domains
option name '1e100.net'
option class 'cs2'
option comment 'cdn'
config domains
option name 'hwcdn.net'
option class 'cs2'
option comment 'cdn'
config domains
option name 'download.qq.com'
option class 'cs1'
option comment 'qq download'
config domains
option name 'steamcontent.com'
option class 'cs1'
option comment 'Steam download'
config domains
option name 'gs2.ww.prod.dl.playstation.net'
option class 'cs1'
option comment 'PSN download'
config domains
option name 'dropbox.com'
option class 'cs1'
option comment 'Dropbox'
config domains
option name 'dropboxstatic.com'
option class 'cs1'
option comment 'Dropbox'
config domains
option name 'dropbox-dns.com'
option class 'cs1'
option comment 'Dropbox'
config domains
option name 'log.getdropbox.com'
option class 'cs1'
option comment 'Dropbox'
config domains
option name 'drive.google.com'
option class 'cs1'
option comment 'Google Drive'
config domains
option name 'drive-thirdparty.googleusercontent.com'
option class 'cs1'
option comment 'Google Drive'
config domains
option name 'docs.google.com'
option class 'cs1'
option comment 'Google Docs'
config domains
option name 'docs.googleusercontent.com'
option class 'cs1'
option comment 'Google Docs'
config domains
option name 'gvt1.com'
option class 'cs1'
option comment 'PlayStore Download'
config domains
option name 'mmg-fna.whatsapp.net'
option class 'cs1'
option comment 'WhatsApp Files'
config domains
option name 'upload.youtube.com'
option class 'cs1'
option comment 'Youtube Upload'
config domains
option name 'upload.video.google.com'
option class 'cs1'
option comment 'Youtube Upload'
config domains
option name 'windowsupdate.com'
option class 'cs1'
option comment 'WindowsUpdate'
config domains
option name 'update.microsoft.com'
option class 'cs1'
option comment 'WindowsUpdate'

View file

@ -36,7 +36,7 @@ _add_dscp_domain() {
}
_add_dscp_domains_rules() {
for $class in cs0 cs1 cs2 cs3 cs4 cs5 cs6 cs7 ef; do
for class in cs0 cs1 cs2 cs3 cs4 cs5 cs6 cs7 ef; do
_ipt -A dscp_prerouting -m set --match-set omr-$class src,dst -m comment --comment "$class" -j DSCP --set-dscp-class "$class"
_ipt -A dscp_prerouting -m set --match-set omr-$class src,dst -m comment --comment "$class" -j RETURN
_ipt -A dscp_postrouting -m set --match-set omr-$class src,dst -m comment --comment "$class" -j DSCP --set-dscp-class "$class"
@ -78,13 +78,13 @@ _add_prerouting_chain() {
_add_postrouting_chain() {
_ipt -N "$1"
_ipt -I POSTROUTING -i "$lan_device" -j "$1"
_ipt -I POSTROUTING -j "$1"
}
_add_fwmark_chain() {
_ipt -N dscp_mark
_ipt -A PREROUTING -i "$lan_device" -j dscp_mark
_ipt -A POSTROUTING -i "$lan_device" -j dscp_mark
_ipt -A POSTROUTING -j dscp_mark
for class in cs4 cs5 cs6 cs7; do
# xtun (hex) -> 0x7874756e
_ipt -A dscp_mark \
@ -107,7 +107,7 @@ _remove_prerouting_chain() {
_remove_postrouting_chain() {
_ipt -F "$1" 2>/dev/null || return
_ipt -D POSTROUTING -i "$lan_device" -j "$1"
_ipt -D POSTROUTING -j "$1"
_ipt -X "$1"
}
@ -128,7 +128,7 @@ _setup_tunnel() {
_cleanup() {
_remove_prerouting_chain dscp_prerouting
_remove_prerouting_chain dscp_mark
_remove_postouting_chain dscp_postrouting
_remove_postrouting_chain dscp_postrouting
_remove_postrouting_chain dscp_mark
_remove_output_chain dscp_output
}

View file

@ -1,24 +0,0 @@
#!/bin/sh
if [ "$(uci -q get dscp)" = "" ]; then
uci -q batch <<-EOF
add dscp classify
set dscp.@classify[0].direction='both'
set dscp.@classify[0].proto='icmp'
set dscp.@classify[0].class='cs5'
set dscp.@classify[0].comment='ICMP'
set dscp.@classify[1].direction='both'
set dscp.@classify[1].proto='udp'
set dscp.@classify[1].class='cs5'
set dscp.@classify[1].src_port='53,123,5353'
set dscp.@classify[1].comment='DNS udp and NTP'
set dscp.@classify[2].direction='both'
set dscp.@classify[2].proto='tcp'
set dscp.@classify[2].class='cs5'
set dscp.@classify[2].src_port='53,5353'
set dscp.@classify[2].comment='DNS tcp'
commit dscp
EOF
fi
exit 0