VPN пакетинде канча текшерүү суммасы бар? Ал көз каранды
Сан IP версияларына, ташылуучу протоколго жана коргоо форматына көз каранды. Баштын текшерүү суммалары, жогорку катмардын суммалары жана бүтүндүк тегдери айырмаланат.
VPN пакети так эки текшерүү суммасын ташыйт деген ырастоо таза угулат жана аны талдоого татыктуудай көп жолу туура эмес. Сан кайсы IP версиялары пайда болоруна, кайсы ташуу протоколу ташыларына жана туннелдин кайсы коргоо форматын колдоноруна көз каранды. Баштын текшерүү суммасы, жогорку катмардын текшерүү суммасы жана криптографиялык бүтүндүк теги үч ар кандай камтууга ээ үч механизм. Аларды саноо ар бири эмнени камтый турганын белгилөөдөн башталат.
Зымда чындыгында кайсы IP версиялары бар экенин текшериңиз
IPv4 баштары 16 биттик баш текшерүү суммасын ташыйт, ал эми IPv6 баштары андай нерсени ташый албайт. Ушул бир факт ар бир туннел үчүн санды өзгөртөт, анткени IPv4-тү IPv6 ичине жана IPv6-ны IPv4 ичине ороп, ар башка документтер пайда болот. Туннел эки үй-бүлөнү тең бир убакта ташый алат, ошол учурда бир багытта экинчисинде жок талаа болушу мүмкүн. Эч нерсе санаардан мурун версияларды аныктаңыз.
Жайгашууну сүрөт эмес, баштардын тизмеси катары жазыңыз. Жазууну окууда тартип маанилүү, ал эми текшерүү суммасы талаасынын бар-жогу биринчи белгиленүүчү нерсе.
outer IPv6 | ESP | inner IPv6 | UDP | application data
outer IPv4 | ESP | inner IPv4 | TCP | application data
Биринчи саптын IP баштарынын эч жеринде IP баш текшерүү суммасы жок, ал эми экинчисинде эки баш тең IPv4 болгондо экөө бар. Ушул эле туннел технологиясы, башка сан, жана эки саптын эч бири толук зым форматы эмес.
Ар бир текшерүү суммасы эмнени камтый турганын текшериңиз
Камтуу — адамдар өткөрүп жиберген бөлүк, жана санды маанилүү кылган да ушул. IPv4 баш текшерүү суммасы башты гана коргойт, ошондуктан анын артындагы жүк жөнүндө эч нерсе айтпайт. IPv6 үстүндөгү UDP текшерүү суммасы жасалма башты, ошондой эле UDP башын жана жүгүн камтыйт, башкача айтканда датаграмма туннелге салынганда ташылуучу пакеттин ичине чейин жетет. TCP өзүнүн жасалма башка окшош көз карандылыгы бар текшерүү суммасына ээ. Үчөө тең текшерүү суммасы деп аталганы менен булар үч башка камтуу.
RFC 791 IPv4 башын текшерүүнү жана аны ар бир секирикте кайра эсептөөнү аныктайт, ал эми RFC 8200 IPv6 үстүндөгү жогорку катмарды иштетүүнү, анын ичинде жасалма башты аныктайт. Эки документтин эч бири VPN пакетинде текшерүү суммаларынын туруктуу саны бар деп айтпайт, анткени эч бири туннелди сүрөттөбөйт.
tshark -r capture.pcap -Y "ip.proto == 50" -V | grep -i checksum
Бүтүндүк коргоосун өзүнчө текшериңиз
ESP бүтүндүгү өзүнүн камтуусу жана алгоритмге көз каранды көрүнүшү бар криптографиялык коргоо. Бул башка ат менен IP же UDP текшерүү суммасы эмес, жана анын узундугу тандалган түзүлүшкө жараша өзгөрөт. Бүтүндүк текшерүүсү пакеттин белгиленген бөлүгүн камтыйт, ал колдонулган режимге жараша ESP башын жана жүктүн бир бөлүгүн камтышы мүмкүн. Аны белгилүү туурасы бар текшерүү суммасынын талаасы катары саноо ушул түшүндүрмөлөрдүн көбү тарап кеткен жер.
Байттарды санаардан мурун тандалган түзүлүштү окуңуз жана натыйжаны башка белгиси бар текшерүү суммасы эмес, бүтүндүк коргоосу катары сүрөттөңүз. Сурасаңыз, декодер талаанын атын өзү айтат.
tshark -r capture.pcap -Y esp -V | grep -iE "integrity|icv"
Санаардан мурун байкоо чекитин текшериңиз
Ички интерфейстеги жазуу жана зымдагы жазуу таптакыр башка катмарларды көрсөтүшү мүмкүн. Ички интерфейсте туннел буга чейин чечилип калган, ошондуктан ташылуучу пакетти көрөсүз жана сырткы баштардын бирин да көрбөйсүз. Зымда сырткы баштарды жана окуй албаган шифрленген жүктү көрөсүз. Эки көрүнүштүн эч бири туура эмес эмес, жана алар бир объектинин көрүнүштөрү эмес. Кандайдыр бир санды келтирүүдөн мурун жазуу кайда алынганын айтыңыз.
sudo tcpdump -ni eth0 -vv -c 5 esp
sudo tcpdump -ni tun0 -vv -c 5
Биринчи буйрук сырткы пакетти бүтүндүк трейлери менен көрсөтөт, ал эми экинчиси ташылуучу пакетти өзүнүн ташуу текшерүү суммасы менен көрсөтөт. Эки жазуунун сандарын кошуу эч нерсени эки жолу санабайт, бирок бир эле пакетти эки жолу түшүндүрөт.
Санды чыныгы жазуу менен салыштырыңыз
Бир пакетти толук декоддоп, декодер текшерүү суммасы же бүтүндүк мааниси деп атаган ар бир талааны белгилеңиз. Андан кийин ар бир белгини өзүңүз жазган жайгашуу менен салыштырыңыз жана чындыгында санабаган катмарга таандык болгондорду өчүрүңүз. Ошол көнүгүүдөн аман калган сан корголуучу, ал эми эстен келтирилген сан андай эмес.
Жооп багыты үчүн кайталаңыз, анткени эки үй-бүлөнү ташыган туннел багыт жана агым боюнча айырмаланышы мүмкүн. Андан кийин санды анын камтуусу менен айтыңыз, мисалы ушул байкоо чекиндеги ушул ички пакет үчүн үч текшерүү суммасы, жалпы VPN пакеттеринин касиети катары эмес.
tshark -r capture.pcap -T fields -e ip.checksum -e udp.checksum -e tcp.checksum