Squid tcp_outgoing_mark နှင့် Linux fwmark လမ်းကြောင်းပေးခြင်း
ရွေးချယ်ထားသော ပရောက်စီတောင်းခံမှုများကို tcp_outgoing_mark ဖြင့် ခွဲခြားပြီး ရှိပြီးသား Linux fwmark စည်းမျဉ်းက သူတို့၏လမ်းကြောင်းကို ရွေးပါစေ။
Squid သည် သာမန် IP လမ်းကြောင်းတွင် မရှိသော အချက်အလက်ဖြင့် တောင်းခံမှုကို ခွဲခြားနိုင်သည်။ ပံ့ပိုးထားသော Linux build တွင် tcp_outgoing_mark သည် မြန်ဆန်သော ACL ကို အခြေခံ၍ ဆာဗာဘက်တွင် Netfilter အမှတ်အသား သတ်မှတ်သည်။
acl selected_sites dstdomain -n .vendor.example
tcp_outgoing_mark 0x20 selected_sites
tcp_outgoing_mark 0x00 all
ကိုက်ညီသော Linux မူဝါဒစည်းမျဉ်းသည် ထို့နောက် fwmark 0x20 ကို အသုံးပြု၍ ကြိုတင်ပြင်ဆင်ထားသော လမ်းကြောင်းဇယားကို ရွေးနိုင်သည်။ ဇယားတွင် မှန်ကန်သော လမ်းကြောင်းများနှင့် ဆက်လက်ရောက်နိုင်သော နောက်တစ်ဆင့် လိုအပ်ဆဲဖြစ်သည်။ Squid ညွှန်ကြားချက်က ၎င်းတို့ကို မဖန်တီးပါ။
ဤအမှတ်အသားသည် ဒေသခံ လမ်းကြောင်းပေးမှု မက်တာဒေတာ ဖြစ်သည်။ ၎င်းသည် IP ပက်ကက်တွင် သယ်ဆောင်သော DSCP သို့မဟုတ် TOS အကွက်နှင့် မတူဘဲ၊ ရင်းမြစ် IP ရွေးသည့် tcp_outgoing_address နှင့်လည်း မတူပါ။
မှတ်တမ်းတင်ထားသော ညွှန်ကြားချက်သည် Linux ပက်ကက်အမှတ်အသားနှင့် လုပ်ပိုင်ခွင့် ပံ့ပိုးမှု လိုအပ်ပြီး မြန်ဆန်သော ACL များကိုသာ လက်ခံသည်။ ၎င်းကို Squid 7 နှင့် စာရင်းပြုထားသော ယခင်ထုတ်ဝေမှုများတွင် ရနိုင်ပြီး Squid 8 တွင် မရနိုင်ပါ။
မူဝါဒကို အမှန်တကယ် အပြင်ထွက် ချိတ်ဆက်မှုများ ပတ်လည်တွင် တည်ဆောက်ပါ။ ပြန်လည်အသုံးပြုထားသော TCP ချိတ်ဆက်မှုများသည် အခြား HTTP တောင်းခံမှု အသုံးပြုသည်ဟူသော အကြောင်းကြောင့်သာ ချိတ်ဆက်မှုအသစ် မဖြစ်ပါ။ ဒီဇိုင်းတွင် ကလိုင်းယင့်ထံ ပြန်သွားသော လမ်းကြောင်းနှင့် အမှတ်အသားမပါသော အသွားအလာ၏ လမ်းကြောင်းကိုပါ ထည့်သွင်းပါ။