یو NIC یا دوه؟ د VPN سرور د انٹرفیسونو ترتیب ټاکل
یو اډاپټر کولی شي هم کوډ شوې اړیکه او هم د تونل ټرافیک وړي۔ یو یا دوه NIC د اړتیا پر بنسټ غوره کړئ، نه د هارډویر د یوې قاعدې پر بنسټ۔
د ډیرو VPN سرورونو لپاره یو فزیکي اډاپټر کافي دی، او دا هم یو نړیوال ډیزاین نه دی۔ کوډ شوې اړیکه هماغه اډاپټر ته رسیږي، د VPN پروسه یې کوډ خلاصوي، او بیا داخلي ټرافیک د مجازي انٹرفیس له لارې وځي، مخکې له دې چې یوې سیمه ییزې خدمت یا rout شوي LAN ته ورسیږي۔ دا کار کوي که نه، په دریو شرایطو پورې اړه لري: هدف چیرته دی، LAN د کلینټونو د حوض ته د بیرته راستنیدو لاره لري که نه، او یو ګډ فزیکي لینک تاسو ته هغه جلاوالی درکوي چې تاسو یې ادعا کوئ۔ دې دریو ته ځواب ورکړئ او د اډاپټرونو شمیر به ترې راووځي۔
هغه درې شرایط چې دا ټاکي
لومړی شرط هدف دی۔ د VPN کوربه پخپله د تونل انٹرفیس له لارې یوازې د لاسرسي وړ دی، خو په LAN کې کوربه فورواردنګ او د بیرته راستنیدو لاره غواړي۔ دوهم شرط هماغه د بیرته راستنیدو لاره ده، ځکه چې د LAN وسیله باید پوه شي چې کلینټونو حوض ته څنګه ورسیږي، یا د لارې له مخې یا په سرور کې د ژباړې له مخې۔
دریم شرط جلاوالی دی۔ یو اډاپټر معنی دا ده چې هر پیکټ، کوډ شوی که نه، یو لینک او معمولاً یو د پالیسۍ زنځیر شریکوي، نو د جلا هارډویر پورې تړلې د جلاوالي ادعا د یو انٹرفیس له خوا نه پوره کیږي۔ دا د لارې په اړه حقیقت دی، نه د دې په اړه چې عملیاتي سیسټم څنګه تنظیم شوی۔ تاسو لا هم د تونل ټرافیک فلټر کولی شئ، خو هغه پوله نشئ ادعا کولی چې نه لرئ۔
له دې دریو څخه هیڅ یو د چاسي د پورټونو د شمیر په اړه نه دی۔ دوی د rout کولو، د پتو د مالکیت او د دې په اړه دي چې ډیزاین څومره فزیکي جلاوالي پورې تړلی دی۔
کله چې فزیکي زونونه، جلا اپلینکونه، د تیریدو ظرفیت یا د باندې د بیا رغونې لاره د دوی توجیه کوي، دوه اډاپټرونه یو قانوني انتخاب پاتې کیږي۔ دا مشخصې اړتیاوې دي، او د دې وړ ده چې مخکې له دې چې څوک هارډویر واخلي، ولیکل شي۔
کله چې خدمت د VPN کوربه باندې ځي
تر ټولو ساده حالت هیڅ فورواردنګ نه غواړي۔ ډیمون د کلینټ پیکټونه د تونل انٹرفیس باندې اخلي او سیمه ییز ساکټ ته یې سپاري، او ځواب هماغه انٹرفیس له لارې بیرته راځي۔ د کوربه له نظره د کلینټونو د حوض پته یوه ریښتینې سیمه ییزه پته ده۔
بیا هم دوه شیان باید سم وي: خدمت باید داسې پتې ته غوږ ونیسي چې تونل ورته رسیږي، او د کوربه فایر وال باید د تونل انٹرفیس ته راتلونکی ټرافیک ومني۔ دواړه لاندې کمانډونو کې ښکاري۔
ss -lntup | grep -E "5432|8080"
ip -brief addr show
ip route get 10.8.0.6 from 10.8.0.1خدمت یوازې عامه پتې ته تړل، یا په تیروتنې سره د تونل انٹرفیس فلټر کول، داسې اړیکه جوړوي چې کوربه ته رسیږي او بیا مري۔ دا د VPN د خرابۍ په څیر ښکاري او معمولاً د ساکټ یا فایر وال پریکړه ده۔
کله چې هدف په LAN کې وي
دلته د یو اډاپټر ډیزاین د سختۍ شهرت ترلاسه کوي۔ سرور باید د کلینټ پیکټونه LAN ته فوروارد کړي، او د LAN وسیله باید ځوابونه بیرته د کلینټونو حوض ته واستوي۔ یا هغه حوض په LAN کې د لارې په توګه یوسئ، یا په سرور کې د سرچینې پته ژباړئ ترڅو ځوابونه سرور ته پخپله بیرته راشي۔
دواړه ځوابونه قانوني دي او په جلا جلا توګه ناکام کیږي۔ د بیرته راستنیدو لاره اصلي د کلینټ پته د هدف لپاره ښکاره ساتي، کوم چې د لاګونو لپاره ښه او د هغو فایر وال قواعدو لپاره بد دي چې د LAN پتې فرض کوي۔ ژباړه LAN ساده ساتي او د کلینټ هویت له هدف څخه پټوي۔
sysctl net.ipv4.ip_forward
nft list ruleset | grep -A4 'chain forward'
ip route show table main | grep 10.8.0غیر متناسب لاره کلاسیکه نښه ده: د کلینټ غوښتنه ورسیږي، ځواب د بل روټر له لارې وځي، او اړیکه په دواړو سرونو کې پرته له تېروتنې وخت تیریدو سره بندیږي۔ د تونل په اړه هر ډول پایلې ته رسیدو مخکې دواړو خواو ته کپچر وکړئ۔
ولې alias دوهم زون نه جوړوي
هماغه اډاپټر ته دوهمه پته ورزیاتول، یا د دوهم پورټ د نقل لپاره dummy انٹرفیس جوړول، ډیر لږ بدلون راولي۔ پیکټونه لا هم هماغه فزیکي لینک، هماغه سویچ پورټ او معمولاً هماغه فایر وال زنځیر له لارې وځي، نو د دوی ترمنځ نوې پوله نه جوړیږي۔ دا د تنظیم اسانتیا ده، نه تقسیمول۔ د زون د پولې په توګه ورته کتل هغه لاره ده چې د جلاوالي ادعا یوازې پر کاغذ ژوندي پاتې کیږي۔
جلا زون په لاره کې ریښتینی جلاوالی غواړي، او دا هغه اړتیا ده چې دوهم اډاپټر یې پوره کوي۔ که یو قاعده په دې ولاړه وي چې VPN ته مخامخ ټرافیک هیڅکله د LAN ته مخامخ ټرافیک سره د خپریدو ډومین شریک نکړي، یوه کیبل هغه ځانګړتیا نشي ورکولی، که کوربه هر ډول پته ولري۔
چیرته چې یو محصول د یو ځانګړي حالت لپاره د څو انٹرفیسونو ټوپولوژي مستند کوي، د حل لارې په جوړولو کې د هغه محصول اسناد تعقیب کړئ۔ عرضه کوونکي د خپرونو ترمنځ ملاتړ شوې ټوپولوژي هم بدلوي، چې د زوړ وزرډ سکرین شاټ پرځای د اوسني لارښود لوستلو لپاره بله پلمه ده۔
خپل اجازه ورکړل شوي ټرافیک ته په کتو ترتیب وګورئ
هغه د ټرافیک ټولګي ولیکئ چې سرور باید یې وړي: کلینټ تر کوربه، کلینټ تر LAN، کوربه تر LAN، او کوډ شوې بهرنۍ اړیکه۔ هر ټولګی سرچینه، هدف او انٹرفیس لري، او ترتیب باید څلور واړه یوځای پوره کړي۔ هغه ډیزاین چې درې یې سمبالوي، معمولاً هغه دی چې ټیکټونه تولیدوي۔
بیا د ډیزاین سند انځور نه، بلکې ریښتیني انٹرفیسونه او ریښتینی کپچر تایید کړئ۔ لاندې کمانډونه دواړه لیدونه چاپوي۔
ip -brief addr
ip route
tcpdump -ni any udp port 51820 -c 5
tcpdump -ni tun0 -c 5که بهرنی کپچر کوډ شوی ټرافیک وښيي او داخلي کپچر د تونل انٹرفیس باندې کوډ خلاص شوی ټرافیک وښيي، پداسې حال کې چې فزیکي اډاپټر دواړه وړي، یو NIC کار کوي۔ که داخلي کپچر خالي وي، ستونزه په تونل یا په فورواردنګ قواعدو کې ده، نه د اډاپټرونو په شمیر کې۔ ټوپولوژي له هماغو دوو کپچرونو او د rout جدول څخه وټاکئ، او بل بدلون به د پرتله کولو لپاره څه ولري۔