Бир кармоодо алты 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 үлгүсүнө эмес, кайтаруу маршрутуна багыттайт.

Тектеш макалалар