Twa ûntwikkelingsboerden moatte ien Ethernet-segment diele wylst har banken yn ferskate gebouwen steane. De tunnel bestiet al en ferfiert al Ethernet, dus it oerbleaune wurk liket op trije opdrachten en is dat net. Wat de host mei in oerbrêge frame docht, wêr't it eigen adres fan 'e kompjûter heart, en hokker grins de brêge net makket binne trije aparte feiten, en it twadde ferkeard dwaan is de gewoane reden dat in laboratoarium ûnregelmjittich wurket en syn beheartagong stil efterút giet. Gjin fan dy trije feiten is sichtber yn in topologyske diagram.

It paad hjirûnder ferûnderstelt in autentisearre TAP-ferbining tusken twa Linux-kompjûters, ien tawijde bedrade poart per bank, en in behearinterface dy't gjin diel fan it eksperimint is. De folchoarder is wichtich: earst frames, dan adressen, as lêste de grins.

Wat de brêge eins ferpleatst

In brêge is in switch dy't yn software útfierd is. Hy leart hokker MAC-adres efter hokker lidpoart ferskynt en stjoert frames tusken leden troch sûnder in IP-routingtabel te rieplachtsjen. Neat yn dy beskriuwing giet oer in subnet, in gateway of in standertrûte, dêrom makket it ynskeakeljen fan IP-trochstjoering dizze oansluting net en dêrom kin in ping slagje wylst oar ferkear noch mislearret. In boerd kin syn partner berikke sûnder hokker standertrûte dan ek konfigurearre, wat minsken ferrast dy't ferwachtsje dat laach twa him as laach trije gedraacht.

Elke kompjûter bringt ien bedrade poart by de brêge en it TAP-apparaat by deselde brêge, dus in frame fan in boerd komt yn 'e lokale poart, wurdt trochstjoerd nei it TAP-apparaat, giet troch de tunnel, komt oan op it TAP-apparaat fan 'e partner en wurdt nei it boerd fan 'e partner trochstjoerd. De tunnel is in lidpoart lykas elke oare, en de brêge wit net en fynt it net wichtich dat der in VPN efter sit. Krekt dy symmetry makket it foarbyld maklik om oer te riddenearjen: elke kant hat ien poart nei it laboratoarium en ien tunnelpoart, en gjin kant is bysûnder.

Board A -- bench0 -- br-test -- tap-bench
                                 |  OpenVPN TAP
Board B -- bench0 -- br-test -- tap-bench

De identike nammen op beide kompjûters binne lokale nammen, gjin dielde objekten. Der is ien Ethernet-paad tusken de banken, sûnder twadde kabel en sûnder twadde tunnel dy't in lus slút; in brêge dy't deselde MAC op twa poarten oankommen sjocht, stjoert mei nocht yn sirkels troch.

Adressearje de brêge, net har lidpoarten

De identiteit fan 'e kompjûter op it laboratoariumsegment heart by it brêge-apparaat. Lidpoarten bliuwe sûnder nûmer, want in poart is in trochstjoerend lid en in adres dêrop soe in twadde, konkurrearjende eigner fan itselde segment meitsje. Dit is de korreksje dy't de measte hânskreaune resepten ferkeard dogge: se adressearje it TAP-apparaat en de brêge, en freegje har dan ôf hokker fan beide de partner eins berikt.

ip link add br-test type bridge
ip link set bench0 master br-test
ip link set tap-bench master br-test
ip address add 172.30.90.2/24 dev br-test
ip link set bench0 up
ip link set tap-bench up
ip link set br-test up

De partner brûkt deselde foarm mei in oar hostadres, en de boerden nimme adressen yn itselde berik mei it brêge-adres fan 'e kompjûter as har folgjende hop as se ien nedich hawwe. Brûk dokumintaasjeberikken oant it plan ôfstimd is, en reservearje it berik sadat it net botst mei wat it kantoar al rûtet. Foardat jo ien fan dit útfiere, befêstigje dat de lidpoarten gjin efterbleaun adres, gjin DHCP-klant en gjin lidmaatskip fan in oare brêge drage, en ferienigje de adressearring fan it TAP-apparaat fia wat de tunnelkonfiguraasje besit, sadat it letter gjin adres weromset.

Wêrom ien tawijde poart per bank

In tawijde bedrade poart is wat foarkomt dat it eksperimint in feroaring foar it hiele kantoar wurdt. De behearinterface draacht SSH, de standertrûte en de bûtenste VPN-ferbining, en neat dêrfan heart op in brêge waans doel it is om laboratoariumframes te ferpleatsen.

In behearadapter oanslute set it kantoar-LAN ien trochstjoerbeslissing fuort fan in ûntwikkelingsboerd, en in boerd dat him op laach twa misdraacht is krekt it soarte apparaat dat jo net op dat segment wolle. In Wi-Fi-adapter is slimmer: it oerbrêgjen fan in draadloaze interface yn ynfrastruktuer-modus gedraacht him net as it oerbrêgjen fan Ethernet, en de mislearring is betiizjend ynstee fan skjin.

Hâld it laboratoarium berik bûten elk produksje-DHCP-gebiet. As de boerden letter dynamyske adressearring nedich hawwe, is ien autorisearre taskenner mei ien pool de iennige regeling dy't foarsisber bliuwt; gewoane routers fan twa lokaasjes dy't op itselde segment antwurdzje, meitsje adressen dy't nimmen ferklearje kin.

De grins dy't de brêge net makket

Oerbrêgjen is gjin routing, en it is ek gjin isolaasje. Frames dy't de brêge oerstekke, kinne noch hieltyd de filterheakken fan 'e host berikke, ôfhinklik fan it ynstallearre bridge-netfilterpaad, dus it effektive belied moat ûndersocht wurde ynstee fan oannommen. De firewall útskeakelje om't ien frame ferlern gien is, ruilet in spesifike bug foar in algemiene.

IP-trochstjoering tusken de brêge en elke behear- of uplinkinterface moat út bliuwe of eksplisyt wegere wurde, en dat is in aparte kontrôle fan brêgelidmaatskip. In boerd dat it laboratoariumadres fan 'e kompjûter as gateway kiest, testet krekt dit: as beheartrochgong slagget, wie de bedoelde grins der nea.

Twa famyljes mear fertsjinje in eksplisite beslissing. It adresplan makket de brêge net allinnich-IPv4, dus IPv6 en oare EtherTypes hawwe har eigen plan of filter nedich. En in slagge ping seit neat oer oft de ûntdekkingsboadskippen, multicast-groepen of jumbo-frames fan it boerd it paad sille oerstekke, want dat binne ferskillende ferkearsklassen mei ferskillende standertwearden.

Ta beslút, ferfier en fertroulikheid binne twa ferskillende oankeapen. TAP draacht Ethernet; de OpenVPN-tsjinst leveret de beskerming deromhinne. In VXLAN-oerlaach draacht ek Ethernet en leveret op himsels gjin fertroulikheid, dus it ferfangen fan it iene troch it oare feroaret de feilichheidseigenskippen sels as it topologyske diagram identyk liket.

Duorsumens en de tests dy't it bewize

In opdracht dy't ien kear nei it ferbinen yntype is, is gjin konfiguraasje. Meitsje de brêge, it poartlidmaatskip en it iene hostadres duorsum fia de besteande netwurkbehearder fan 'e kompjûter, en bûn de oansluting oan it ferskinen fan it TAP-apparaat sadat in opnij ferbinen gjin brêge mei in ferdwûn lid efterlit.

bridge link show
ip -d link show br-test
bridge fdb show br br-test | head

Test dan wat de boerden eins yn beide rjochtingen nedich hawwe, ferbyn de tunnel opnij en start ien kompjûter opnij neffens it goedkarde herstelplan. Befêstigje dêrnei trije dingen: beheartagong wurket noch hieltyd ûnôfhinklik, gjin dûbele laboratoariumadres ferskynt, en gjin ûnferwacht produksje-interface is by de brêge kommen. Dy kombinaasje is it bewiis dat it eksperimint yn syn bank bleaun is.

Relatearre artikelen