Trosiant IPsec: mae’r modd, NAT-T a’r algorithmau i gyd yn ei newid
Mae un ffigur trosiant a gyhoeddwyd yn disgrifio un ymgorfforiad ar un llwybr. Adiwch y penawdau y mae eich tiwnel yn eu negodi mewn gwirionedd, yna mesurwch y llwybr.
Rywle mewn canllaw mae rhif, fel arfer rhwng trigain a phedwar ugain beit, y gwnaeth rhywun ei dynnu o 1500 i gael MTU rhyngwyneb. Mae’r rhif hwnnw’n disgrifio un ymgorfforiad penodol ar un llwybr penodol. Newidiwch y modd, y teulu cyfeiriad allanol, y seiffr neu bresenoldeb NAT, ac nid yw’r rhifyddeg yn berthnasol i’ch tiwnel mwyach.
Daeth y rhif o diwnel gwahanol
Nid yw trosiant yn briodwedd IPsec yn y haniaethol. Mae’n briodwedd y pecyn a adeiledir mewn gwirionedd: modd a negodwyd, penawd allanol, penawd amddiffyn, padio, maes cyfanrwydd ac o bosibl lapin UDP ychwanegol.
Mae ffigur a ddyfynnir ar gyfer modd cludo gydag IPv4 a heb NAT yn disgrifio pecyn llai na modd tiwnel gydag IPv6 o dan drawsgludiant NAT. Mae’r ddau yn gywir ar gyfer eu hachos eu hunain. Copïo’r naill neu’r llall i osodiad gwahanol yw’r ffordd y mae pobl yn gorffen gyda MTU sy’n torri trosglwyddiadau mawr. Mae’r methiant yn dawel oherwydd bod ceisiadau bach yn parhau i weithio.
Adiwch y haenau sydd yno mewn gwirionedd
Dechreuwch o’r penawd IP allanol a gweithiwch i mewn. Mewn modd tiwnel mae’r pecyn gwreiddiol y tu mewn, felly mae’r penawd allanol yn ychwanegiad yn hytrach na disodliad. RFC 4303 yn disgrifio penawd ESP, y padio a’r data cyfanrwydd sy’n ei ddilyn.
| Layer | What it adds | When it applies |
|---|---|---|
| Outer IP header | 20 bytes for IPv4, 40 for IPv6 | Always, and 40 rather than 20 if the outer path is v6 |
| ESP header | 8 bytes of SPI and sequence number | Always |
| Block cipher IV | 8 to 16 bytes depending on the transform | When the negotiated cipher uses one |
| Padding and trailer | Padding to the block size, plus two trailer bytes | Always, and the amount varies with payload length |
| Integrity data | 12 to 16 bytes for common authenticated ciphers | When integrity protection is negotiated |
| UDP encapsulation | 8 bytes | NAT traversal on port 4500, which is common for clients behind NAT |
Nid oes unrhyw un o’r rhesi hynny’n gyson ar draws gosodiadau, ac nid yw’r rhes badio’n gyson hyd yn oed o fewn un gosodiad. Dyma’r union reswm y mae un ffigur trosiant a gyhoeddwyd yn siomi.
Gall dau safle anghytuno am yr un tiwnel
Rhaid i’r pecyn gwarchodedig groesi’r llwybr allanol o hyd, ac nid yw’r llwybr allanol yr un peth ym mhob man. Mae dolen fynediad PPPoE yn cario llai na segment Ethernet glân. Gall rhwydwaith symudol grebachu ymhellach, ac mae darparwr sy’n tiwnelu ei draffig ei hun yn ychwanegu ymgorfforiad arall na soniodd neb amdano. Mae tiwnel sy’n gweithio ar un ddolen ac yn methu ar un arall yn disgrifio’r ail ddolen, nid y protocol.
Gall y ddau gyfeiriad fod yn wahanol hefyd. Gall llwybr anghymesur roi i chi uwchlwytho sy’n gweithio a lawrlwytho sydd wedi stopio, sy’n darllen fel problem cymhwysiad nes i chi edrych ar feintiau pecynnau yn hytrach nag ar gyrhaeddedd. Mae ping bach yn llwyddo yn profi ychydig iawn am ymateb maint llawn.
Mesurwch yn lle tynnu
Darganfyddwch y datagram mwyaf sy’n goroesi’r llwybr. Yna cymharwch ef â’r gwerth y mae’r rhyngwyneb yn ei adrodd:
ip link show eth0 | grep -o 'mtu [0-9]*' ip xfrm state list ping -M do -s 1400 198.51.100.7 ping -M do -s 1372 198.51.100.7 tcpdump -ni any -c 20 'esp or udp port 4500'
Cerddwch maint y ping i lawr nes bod atebion yn cyrraedd, a thriniwch y gwerth mwyaf sy’n gweithio fel y gyllideb ar gyfer y llwybr hwnnw. Mae allbwn xfrm yn dweud wrthych pa fodd a pha algorithmau a negodwyd, sef y mewnbwn i unrhyw gyfrifiad gonest. Mae’r cipiad yn cadarnhau ai ESP neu ESP wedi’i lapio mewn UDP sydd ar y wifren, ac mae hynny’n setlo’r cwestiwn NAT heb ddyfalu.
Cadwch un gwerth ar gyfer yr awyren reoli hefyd. Mae gan becynnau ysgwyd llaw IKE strwythur gwahanol i becynnau data, felly nid yw maint a ddeillir o gipiad ysgwyd llaw yn MTU awyren data.
Rhowch y rhif lle mae’n perthyn
Ar gyfer TCP trwy diwnel, clamp MSS yn aml yw’r rheolaeth leiaf ymwthiol, oherwydd ei fod yn lleihau’r hyn y mae’r penau’n ei anfon heb newid y tiwnel ei hun. Ar gyfer tiwnel sy’n seiliedig ar lwybrau, gosodwch MTU’r rhyngwyneb tiwnel yn fwriadol a dogfennwch pam. Mae gwneud y ddau ar unwaith ac yna mesur yn rhoi dim gwybodaeth i chi am ba un a helpodd.
Cadwch y modd a negodwyd, y teulu allanol, cyflwr NAT a’r symptom ailadroddadwy gyda’i gilydd yn y tocyn. Mae set gofnodedig o bedwar ffaith yn curo cysonyn a gofir, a dyma’r unig fersiwn o hyn sy’n goroesi’r uwchraddiad cleient nesaf.