Yr arfer yw gostwng yr MTU cyn gynted ag y bydd WireGuard yn camymddwyn, ac mae’r arfer hwnnw’n cuddio nam gwahanol. Mae porth nad yw’n anfon a llwybr nad yw’n cario pecynnau mawr yn cynhyrchu patrymau gwahaniaethol: mae un yn methu yn y ddau gyfeiriad ac ar bob maint, mae’r llall yn goroesi ceisiadau bach ac yn marw ar rai mawr. Nodwch pa siâp sydd gennych cyn newid unrhyw rif. Mae’r prawf yn rhad ac mae’n dileu hanner yr achosion posibl.

Dwy fethiant, dau siâp gwahanol

Mae problem anfon yn ymddangos yn syth y tu hwnt i’r gweinydd. Mae’r ysgwyd llaw yn llwyddo, mae cyfeiriad y twnnel yn ateb, ac nid oes modd cyrraedd dim y tu ôl i’r porth hyd yn oed gyda chais bach. Cyrhaeddodd y pecyn y gweinydd ac ni chafodd ei anfon ymlaen, neu nid oedd gan yr ateb lwybr yn ôl.

Mae problem maint yn ymddangos dim ond uwchben trothwy. Mae DNS, ysgwyd llaw TCP a galwad API fach i gyd yn gweithio, tra bod lawrlwytho ffeil neu ateb mawr yn hongian. Aeth y pecynnau a oedd yn ffitio o un pen i’r llall, a chafodd y rhai nad oedd yn ffitio eu gollwng yn rhywle heb adroddiad defnyddiadwy.

Mae’r disgrifiadau hynny’n cyfeirio at wahanol bobl a gwahanol ffeiliau cyfluniad, a dyna pam mae mesur y siâp yn werth mwy na dyfalu. Ni all un ping i’r porth eu gwahanu.

Diarddel anfon cyn i chi leihau unrhyw beth

Profwch gyrchfan y tu hwnt i’r porth, nid y porth ei hun. Nid yw ping i gyfeiriad twnnel y gweinydd yn profi dim ond bod y rhyngwyneb i fyny a’ch bod yn cyrraedd y peiriant sy’n terfynu’r twnnel. Mae traffig ar gyfer y rhwydwaith ehangach yn dibynnu ar fod anfon IP wedi’i alluogi ar y peiriant hwnnw ac ar dan wal sy’n caniatáu’r llif a anfonir. Rhaid i’r ddau fod yn wir, ac mae unrhyw un ohonynt yn anwir yn cynhyrchu’r un distawrwydd.

Mae llwybro dychwelyd yr un mor bwysig. Os nad yw’r rhwydwaith cyrchfan yn gwybod sut i gyrraedd cyfeiriad twnnel y cleient, mae’r cais yn cyrraedd ac mae’r ateb yn diflannu, ac mae’r cleient yn adrodd am derfyn amser sy’n edrych yn union yr un fath ag anfon a ollyngwyd.

Lle mae’r dyluniad yn defnyddio cyfieithu cyfeiriadau, mae’r reol gyfieithu yn rhan o’r llwybr dychwelyd hwnnw. Mae ei dileu wrth hel problem MTU yn troi un dyluniad sy’n gweithio yn un toredig, felly darllenwch y rheolau presennol cyn eu golygu.

Mesurwch lle mae’r toriad yn dechrau

Darllenwch gyflwr anfon a’r rheolau hidlo yn gyntaf. Gwiriadau darllen yn unig yw’r rhain ac maent yn ateb y cwestiwn rhad:

sysctl net.ipv4.ip_forward
sudo iptables -S FORWARD
ip route get 10.30.0.9

Yna profwch feintiau gyda’r did don’t-fragment, o’r cleient, tuag at westeiwr y tu hwnt i’r porth:

ping -M do -s 1200 10.30.0.9
ping -M do -s 1400 10.30.0.9

Os yw’r prawf cyntaf yn gweithio ac mae’r ail yn methu â gwall darnio, mae’r llwybr yn dweud ei faint defnyddiadwy wrthych. Os nad yw’r un yn gweithio, rydych yn edrych ar anfon neu lwybro, ac nid MTU yw’r newidyn i’w newid.

ObservationPoints towardWhere to look
Nothing beyond the gateway worksForwarding or return routeForwarding flag, filter rules, routing table
Small works, large stallsPacket size on the pathTunnel MTU and the link underneath
Only names failDNS resolutionThe resolver configured for the tunnel
Works sometimesMultiple paths or state expiryFlow selection and NAT state

Trwsiwch yr haen a brofwyd gennych

Pan mai anfon yw’r nam, y cywiriad yw rheol anfon neu lwybr, wedi’i fynegi mor gul ag y mae’r dyluniad yn caniatáu. Pan mai maint yw’r nam, y cywiriad yw MTU sy’n cyfrif am y cyfleoli ar y llwybr penodol hwn, wedi’i gymhwyso i’r rhyngwyneb sydd ei angen ac nid i bob addasydd yn y fflyd.

Pa ffordd bynnag, ailadroddwch yr un dasg yn erbyn yr un gyrchfan wedyn. Os yw’r trosglwyddiad mawr gwreiddiol nawr yn cwblhau, mae’r newid wedi mynd i’r afael â’r haen a oedd yn methu. Os mai dim ond y prawf bach sydd wedi gwella, fe wnaethoch drin symptom ac mae’r terfyn go iawn yn dal yn ei le.

Nodwch pa siâp a welscoch cyn newid y gosodiad. Mae’r un llinell honno, wedi’i chofnodi wrth ymyl y trwsiad, yn rhwystro’r person nesaf rhag gostwng MTU nad oedd byth yn broblem.

Erthyglau cysylltiedig