Ping-ը ապացույց չէ, փորձարկեք ուղին երկու տեղամասերի միջև
Դարպասից արված ping-ը ոչինչ չի ասում ծառայության մասին. անցեք ուղին իրական հաճախորդից, օգտագործեք հավելվածի արձանագրությունը և վերարտադրեք այն չափը կամ անունը, որը ձախողվում է։
Թունելը բարձրացված է, դարպասները պատասխանում են միմյանց, և միևնույն է՝ մի տեղամասի օգտվողները չեն կարողանում բացել մյուսի ֆայլային համօգտագործումը։ Ինչ-որ մեկը ping է անում դարպասից, պատասխան ստանում և ցանցը հայտարարում առողջ։ Այդ պատասխանը ճամփորդել է երկու սարքերի միջև, որոնք երբեք խնդիրը չեն եղել։ Օգտակար փորձարկումը սկսվում է այն հոսթից, որին ծառայությունը պետք է, օգտագործում է այն արձանագրությունը, որն օգտագործում է հավելվածը, և վերարտադրում է այն պայմանը, որում այն ձախողվում է։ Մնացած ամեն ինչ կանաչ լույս է մի ուղու համար, որի վրա ոչ ոք չկա։
Սկսեք այն հաճախորդից, որին ծառայությունը պետք է
Գրեք չորս բան նախքան որևէ բան փորձարկելը՝ հաճախորդի հասցեն, նպատակակետի հասցեն, հոսթի անունը և հավելվածի պորտը։ Ապա հաստատեք, որ ծառայությունը աշխատում է տեղում՝ իր տեղամասում, կողքի հոսթից։ Առանց այս հիմնագծի չեք կարող տարբերել կոտրված թունելը կոտրված ծառայությունից, և այս տոմսերի կեսը երկրորդն է։
Փորձեք փաստաթղթավորված հոսթի անունը և, որտեղ ծառայությունը թույլ է տալիս, նույն պորտի ուղիղ հասցեի ստուգումը։ Անհաջող անվան որոնումը և անհասանելի լուծված հասցեն ձեզ տանում են տարբեր ուղիներով։ Եթե հոսթի անունը փոխարինեք IP-ով, մի անջատեք HTTPS ինքնության ստուգումը, որպեսզի այն աշխատի՝ վկայագրի նախազգուշացումը տեղեկություն է, ոչ թե խոչընդոտ։
Անցեք ուղին յուրաքանչյուր եզրին
Կարդացեք այն երթուղին, որն ընտրում է հաճախորդը, ապա այն երթուղին, որն ընտրում է դարպասը այդ նպատակակետի համար, ապա հաշվիչները կամ սահմանափակ որսումը յուրաքանչյուր եզրին։ Դուք փնտրում եք երկու փաստ՝ հասա՞վ հարցումը հեռավոր տեղական ցանց, և վերադարձա՞վ պատասխան։ Ինտերֆեյսի հաշվիչները ներառում են բոլոր մյուս հոսքերը, ուստի համադրեք ճշգրիտ ժամանակադրոշմով և հասցեների զույգով, ոչ թե գրաֆիկի ձևով։ Սխալ եզրին արված որսումը ավելի վատ է, քան բացակայությունը, որովհետև այն ապացույցի տեսք ունի։
ip route get 10.10.0.5
sudo tcpdump -ni any host 10.10.0.5 and port 445
sudo tcpdump -ni any net 10.10.0.0/24 and net 10.20.0.0/24
Եթե հարցումը հայտնվում է հեռավոր եզրին առանց դրա հետևում պատասխանի, խնդիրը մյուս կողմում է՝ firewall, բացակայող վերադարձի երթուղի կամ հոսթ, որը չի ընդունում աղբյուրը։ Եթե հարցումը երբեք չի հայտնվում, տեղական երթուղին կամ թունելի ընտրիչները այն չեն տարել, և մյուս կողմը դեռ հետաքննության արժանի չէ։
Օգտագործեք այն արձանագրությունը, որն օգտագործում է հավելվածը
ICMP-ն թույլ զոնդ է։ Այն կարելի է զտել, արագությամբ սահմանափակել կամ վարել ծառայությունից տարբեր քաղաքականությամբ, ինչը և՛ հաջողությունը, և՛ ձախողումը դարձնում է երկիմաստ։ Փորձարկեք իրական պորտը և, որտեղ հնարավոր է, արձանագրության իրական ձեռքսեղմումը։
nc -vz 10.10.0.5 445
curl -sv --max-time 5 https://files.corp.internal/ -o /dev/null
openssl s_client -connect 10.10.0.5:443 -servername files.corp.internal
Ավարտված TCP ձեռքսեղմումը ապացուցում է հասանելիությունը և քաղաքականությունը այդ պորտի համար։ Այն չի ապացուցում, որ հավելվածն աշխատում է՝ նույնականացումը, վերբեռնումը կամ կոնկրետ API կանչը դեռ կարող են ձախողվել։ Փորձարկեք այն գործողությունը, որն օգտվողներն իրականում կատարում են՝ օգտագործելով անվնաս համարժեք, փոխարենը կրկին ու կրկին իրական գործարք ներկայացնելու։
Վերարտադրեք այն պայմանը, որում ձախողվում է
Միայն մեծ փոխանցումներով հայտնվող ձախողումները չափի խնդիր են, ոչ թե կապի։ Ուղարկեք մեծ փաթեթ don't-fragment բիտը միացված և հետևեք, թե որտեղ է այն կանգ առնում։ Եթե փոքր հարցումը հաջողվում է, իսկ մեծը կախվում է, ապա թունելի MTU-ն և դարպասների MSS-ի մշակումը հաջորդ կասկածյալներն են։
ping -M do -s 1400 10.10.0.5
ping -M do -s 1472 10.10.0.5
curl -sS --max-time 30 -F file=@./sample.bin https://files.corp.internal/upload
Եթե ձախողվում է միայն մեկ ենթացանց, նայեք երթևեկության ընտրիչներին, երթուղիների հայտարարություններին և այդ ենթացանցի վերադարձի դարպասին։ Եթե ձախողվում է միայն հոսթի անունը, հետևեք DNS-ին՝ ներառյալ, թե որ լուծիչն է օգտագործել հաճախորդը և արդյոք հեռավոր տեսքը տեսանելի է այդ տեղամասից։ Երեք տարբեր խափանում, երեք տարբեր ուղղում, և ping փորձարկումը ոչ մեկը չի տարբերում։
Ուղղումից հետո կրկնեք նույն փորձարկումը
Նորից գործարկեք նույն հաճախորդը, նպատակակետը, պորտը և բեռը։ Ապա նորից միացեք կամ փորձեք պահուստային ուղին, եթե նախագծում այն կա, որովհետև ուղղումը, որն աշխատում է միայն այնքան ժամանակ, քանի դեռ սկզբնական թունելի օրինակը կենդանի է, փորձարկված չէ։ Պահեք փորձարկումը կապված իրական աղբյուրի, իրական նպատակակետի և իրական գործողության հետ, այլ ոչ թե վահանակի մեկ կանաչ ցուցիչի։
Գրանցեք չորս հիմնական արժեքները և արդյունքը։ Նույն ախտանիշի հաջորդ զեկույցը այնուհետև կարող է սկսվել ապացույցներից, այլ ոչ ping-ից։