Ping-ի կորուստ VPN-ում. Echo հարցումները խմբավորեք տոկոսից առաջ
Վեց հարցում և երեք պատասխան չեն կազմում 50 տոկոս կորստի պնդում։ Նախքան որևէ բան բաժանելը խմբավորեք արձագանքները ըստ աղբյուրի, նույնացուցիչի և հաջորդականության։
Մի գրավման մեջ կա վեց Echo հարցում և երեք պատասխան, և ինչ-որ մեկը տոմսի մեջ գրում է 50 տոկոս փաթեթի կորուստ։ Այդ թիվը կարող է ճիշտ լինել գրավման համար և սխալ թունելի համար։ Վեց հարցումները կարող են պատկանել երկու տարբեր զրույցների՝ երկու տարբեր առաքման պայմանագրերով։ Խմբավորեք դրանք նախքան բաժանելը, և հարաբերակցությունը կդադարի լինել զեկույցի հետաքրքիր մասը։
Քայլ 1. առանձնացրեք հոսքերը ըստ աղբյուրի և նպատակակետի
Echo հարցումը կրում է աղբյուր և նպատակակետ, և այդ երկու դաշտերը որոշում են, թե որ զրույցին է այն պատկանում։ Դարպասի կողմից ստեղծված զոնդը օգտագործում է դարպասի թունելի հասցեն, մինչդեռ LAN հոսթի անունից փոխանցված զոնդը պահպանում է այդ հոսթի հասցեն։ Հեռավոր կողմը կարող է վերադարձի երթուղի ունենալ մեկի համար և չունենալ մյուսի համար, ինչը ստիպում է երկու խմբերին տարբեր կերպ վարվել այնպիսի պատճառներով, որոնք կապ չունեն թունելի հետ։
Բաժանեք գրավումն այդ դաշտերով նախքան որևէ բան հաշվելը, և պահեք նպատակակետը որպես բանալու մաս։ Երկու հոսք դեպի տարբեր զուգընկերներ համադրելի չեն, նույնիսկ երբ նրանք կիսում են աղբյուրը։
Գրեք խմբերը իրենց քանակներով, որովհետև հաջորդ քայլը որոշում է, թե որ պատասխանները որ խմբին են պատկանում։ Երեք հարցում և ոչ մի համապատասխան պատասխան ունեցող խումբը գտածո է։ Երեք հարցում և երեք պատասխան ունեցող խումբը հիմնական գիծ է։
Քայլ 2. համապատասխանեցրեք ըստ նույնացուցիչի և հաջորդականության
RFC 792-ում Echo ձևաչափը կրում է նույնացուցիչ և հաջորդականության համար և դրանք համարում է այն դաշտերը, որոնք պատասխանը զույգացնում են իր հարցմանը։ Երկուսն էլ անհրաժեշտ են այդ աշխատանքի համար։ Միայն հաջորդականության համարը եզակի չէ, քանի որ տարբեր ուղարկողներ կամ պրոցեսներ կարող են նույն արժեքը կրկին օգտագործել մեկ գրավման պատուհանում։ Նույնացուցիչը նեղացնում է ուղարկողին, հաջորդականությունը՝ դիրքը, և զույգը միասին է, որ համապատասխանությունը դարձնում է պաշտպանելի։
Պատասխանը շրջում է իր հարցման հասցեների ուղղությունը, այնպես որ համապատասխանությունը հարցում-պատասխան զույգ է, ոչ թե երկու նույնական կրկնակ։ Համեմատեք հարցման աղբյուրը պատասխանի նպատակակետի հետ և հարցման նպատակակետը պատասխանի աղբյուրի հետ, ապա հաստատեք, որ նույնացուցիչը և հաջորդականությունը համընկնում են։
Պահեք նաև դիտարկման պատուհանը, քանի որ երկար գրավումը կարող է պարունակել երկու դաշտերի օրինական կրկնակի օգտագործում։ Պատուհանը մեկ պոռթկումի կրճատելը վերացնում է այդ անորոշության մեծ մասը։ Այն նաև հաշվարկները դարձնում է վերարտադրելի տոմսը կարդացողի համար։
tshark -r capture.pcap -Y 'icmp.type == 8' -T fields -e frame.time -e ip.src -e ip.dst -e icmp.ident -e icmp.seq
tshark -r capture.pcap -Y 'icmp.type == 0' -T fields -e frame.time -e ip.src -e ip.dst -e icmp.ident -e icmp.seqՔայլ 3. համեմատեք կրկնակները նույն սահմանում
Եթե ցանցային հասցեների թարգմանությունը գտնվում է գրավման կետի և զուգընկերի միջև, ապա հարցման և պատասխանի հասցեները կտարբերվեն նախագծով։ Համեմատեք կրկնակները մեկ սահմանում, կամ բացահայտ կրեք քարտեզագրումը, որպեսզի տարբերությունը հաշվի առնվի։ Թարգմանությունից առաջ հարցումները թարգմանությունից հետո պատասխանների հետ խառնելը ստեղծում է անհամապատասխանություններ, որոնք երբեք չեն եղել լարի վրա։
Որոշեք սահմանը նախքան հաշվելը սկսելը, և նշեք այն զեկույցում, որպեսզի հաջորդ մարդը կարողանա վերարտադրել խմբավորումը։ Մեկ գրավում հաճախորդի կողմում և մյուսը սերվերի կողմում երկու տարբեր սահմաններ են։ Յուրաքանչյուրը պատասխանում է տարբեր հարցի այն մասին, թե որտեղ անհետացավ պատասխանը։
Թարգմանված զոնդերի խումբը ժառանգում է նաև թարգմանող սարքի սեփական վիճակը, ինչը կարող է լինել այն իրական պատճառը, որ պատասխանը երբեք չի հասնում։ Ստուգեք այդ վիճակը նախքան դրանից այն կողմի ուղին մեղադրելը։
tcpdump -ni any icmp and host 10.90.0.1 -c 20
tshark -r capture.pcap -Y 'icmp' -T fields -e ip.src -e ip.dst -e ip.ttl | head -20Քայլ 4. ասեք, թե գրավումն ինչ կարող է ապացուցել և ինչ չի կարող
Դիտարկված բացը չի ապացուցում, որ հեռավոր հոսթը լռել է։ Գրավման կետը կարող է տեսնել միայն մեկ ուղղություն, զտիչը կարող է գցել պատասխանը, կամ բուֆերը կարող է լցվել պատուհանի ընթացքում։ Դրանցից յուրաքանչյուրը տալիս է նույն բացակայությունը և տարբեր եզրակացություն։
Գրանցեք գրավման վայրը, զտիչի արտահայտությունը և բաց թողնելու հաշվիչները հաշվարկների կողքին, քանի որ առանց դրանց հարաբերակցությունը հնարավոր չէ աուդիտ անել։ Հենց այդ երեք տողերն են թվին պաշտպանելի դարձնում ավելի ուշ։
Այնուհետև առանձնացրեք, թե դիտարկումն ինչ է հաստատում և ինչ է ենթադրում, երկու նախադասությամբ՝ մեկի փոխարեն։ Առաջին նախադասությունը նշում է հաշվարկները և սահմանը։ Երկրորդը նշում է վարկածը և ինչը կհաստատի այն։
Երբ հարցն այն է, թե արդյոք որոշակի ուղին գցում է փաթեթները, բացահայտ աղբյուրի հասցեով վերահսկվող զոնդը ավելի ուժեղ ապացույց է, քան խառը երթևեկության պասիվ հաշվարկը։ Ուղարկեք այն նույն մեքենայից, նույն ժամանակ, նույն զուգընկերոջը։ Փոխեք մեկ փոփոխական, և համեմատությունը մնում է։
Զեկուցեք խմբերը և հաջորդ սահմանը
Զեկույցն ունի երեք տող՝ խմբի սահմանումը, յուրաքանչյուր խմբի ներսում համապատասխանեցված հաշվարկները և սահմանը, որտեղ կատարվել է համեմատությունը։ Այնուհետև ընթերցողը կարող է տեսնել, որ մի խումբ ամբողջությամբ պատասխանել է, իսկ մյուսը՝ ոչ, ինչը մատնանշում է երթուղու կամ թույլտվության վրա, այլ ոչ պատահական կորստի։
Կցեք գրավման ֆայլը և զտիչների արտահայտությունները, որպեսզի խմբավորումը հնարավոր լինի վերարտադրել։ Առանց ֆայլի ամփոփումը պնդում է, ոչ թե արդյունք։
ping -c 5 -I 10.80.0.6 10.90.0.1
ping -c 5 -I 10.30.0.25 10.90.0.1
tshark -r capture.pcap -Y 'icmp.type == 8 || icmp.type == 0' -T fields -e ip.src -e ip.dst -e icmp.ident -e icmp.seq | sort | uniq -c | headԵրբ մի խումբը ցույց է տալիս հինգ պատասխան, իսկ մյուսը՝ ոչ մեկը, գտածո այն է, որ մի աղբյուր ունի աշխատող վերադարձի ուղի, իսկ մյուսը՝ ոչ։ Սա շատ ավելի լավ տոմս է, քան խառը տոկոսը, և այն հաջորդ ստուգումն ուղղում է դեպի վերադարձի երթուղին, այլ ոչ թե չկապված VPN օրինակին։