Vad är en jokerteckensmask? Hur beräknar man den

⚡ Smart sammanfattning

En jokerteckensmask är en 32-bitars invers mask som anger för routrar och åtkomstkontrolllistor vilka delar av en IP-adress som ska matchas och vilka som ska ignoreras, med noll bitar för att matcha och en bit för att hoppa över.

  • 🔄 Invers logik: En jokerteckenmask vänder på reglerna för subnätmasker — en 0-bit måste matcha adressen och en 1-bit ignoreras.
  • 🧮 Beräkning: SubtracAnge subnätmasken från 255.255.255.255 för att skapa matchande jokerteckensmask.
  • 🎯 Värd och eventuella: Nyckelordet host är lika med 0.0.0.0 och nyckelordet any är lika med 255.255.255.255.
  • 🛡️ ACL-användning: Jokerteckenmasker definierar vilka adressintervall en åtkomstkontrolllista tillåter eller nekar.
  • 🧭 routing: OSPF- och EIGRP-nätverkssatser förlitar sig också på jokerteckenmasker för att välja gränssnitt.
  • 🤖 AI-hjälp: AI-assistenter kan generera och validera jokerteckenmasker, vilket minskar manuella ACL-fel.

Vad är en jokerteckensmask och hur man beräknar den

Vad är Wildcard Mask?

En jokerteckenmask är en talsekvens som effektiviserar paketroutning inom ett privat nätverks subnät. Den kallas också för en invers mask. Till skillnad från en subnetmask, där binär 1 betyder en matchning och binär 0 betyder ingen matchning, vänder en jokerteckenmask på den logiken.

En jokerteckensmask är 32 bitar lång. Med en jokerteckensmask indikerar nollbitarna att motsvarande bitposition måste matcha samma position i IP-adress, medan ett-bitarna indikerar att motsvarande position inte behöver matcha.

Jokerteckenmasker använder följande regler för att matcha binärt 1 och 0:

  • Om jokerteckens maskbit är 0, matchar den bitvärdet i adressen.
  • Om jokerteckens maskbit är 1 ignorerar du motsvarande bitvärde i adressen.

Jokerteckenmasken för en enskild värd är alltid 0.0.0.0.

Wildcard-mask vs. subnätmask

Jokerteckenmasker och subnätmasker ser liknande ut men tjänar motsatta syften. En subnätmask separerar nätverksdelen av en adress från värddelen, medan en jokerteckenmask anger för en enhet vilka adressbitar som ska matcha och vilka som ska ignoreras. Tabellen nedan jämför de två:

Bas Nätmask Jokerteckenmask
Binär 1 Identifierar nätverksbitarna Ignorera den här biten (bryr mig inte)
Binär 0 Identifierar värdbitarna Måste matcha den här biten exakt
Syfte Definierar subnätgränser Filtrerar adresser i ACL:er och routingsatser
Exempel för en /24 255.255.255.0 0.0.0.255
Bitar måste vara sammanhängande Ja Nej — masker kan vara icke-sammanhängande

Hur fungerar en jokerteckenmask?

Följande exempel hjälper dig att förstå konceptet med jokerteckenmasker. Diagrammet visar ett nätverk med tre värdar och en router som är direkt ansluten till tre delnät:

Nätverksdiagram över en router ansluten till tre delnät som illustrerar matchning av jokerteckensmasker

Anta att du bara vill annonsera subnätet 10.0.1.0/24. Du kan använda jokerteckensmasken 0.0.0.255 i följande nätverkskommando:

R1(config-router)#network 10.0.1.0 0.0.0.255

Varför jokerteckenmask på 0.0.0.255?

Först, konvertera Cisco jokerteckensmask och IP-adress till binärt format:

10.0.1.0 = 00001010.00000000.00000001.00000000
0.0.0.255 = 00000000.00000000.00000000.11111111

Nollbitarna i jokerteckenmasken måste matcha samma position i IP-adressen som ingår i nätverkskommandot:

00001010.00000000.00000001.00000000
00000000.00000000.00000000.11111111

I exemplet ovan behöver den sista okteten inte matcha eftersom jokerteckensbitarna alla är ettor. De första 24 bitarna måste matcha eftersom dessa jokerteckensmaskbitar alla är nollor.

Här matchar jokerteckenmasken alla IP-adresser som börjar med 10.0.1.x (10.0.1.0 till 10.0.1.255). I det här fallet matchas endast ett nätverk: 10.0.1.0/24.

Vad händer om du vill inkludera både 10.0.0.0/24 och 10.0.1.0/24 subnät?

Du behöver använda jokerteckensmasken 0.0.1.255, som visas nedan:

10.0.0.0 = 00001010.00000000.00000000.00000000
10.0.1.0 = 00001010.00000000.00000001.00000000
0.0.1.255 = 00000000.00000000.00000001.11111111

Med jokerteckenmasken 0.0.1.255 behöver endast 23 bitar matcha. Det betyder att alla adresser i intervallet 10.0.0.0 till 10.0.1.255 matchas, så båda delnäten täcks.

Hur beräknar man jokerteckenmask?

Att beräkna en jokerteckensmask för hand kan vara en utmanande uppgift. En enkel genväg är att subtracsubnätmasken från 255.255.255.255. Resultatet är jokerteckensmasken.

Till exempel:

 
1) 255.255.255.255 - 255.255.255.255 = 0.0.0.0 (wildcard mask)
2) 255.255.255.255 - 255.255.255.128 = 0.0.0.127 (wildcard mask)
3) 255.255.255.255 - 192.0.0.0 = 63.255.255.255 (wildcard mask)

Vanliga värden för jokerteckensmasker

Tabellen nedan listar ofta använda CIDR-prefix med deras matchande subnät- och jokerteckenmasker, så att du kan slå upp ett värde istället för att beräkna det varje gång:

CIDR Nätmask Jokerteckenmask Matchade adresser
/8 255.0.0.0 0.255.255.255 16,777,216
/ 16 255.255.0.0 0.0.255.255 65,536
/ 24 255.255.255.0 0.0.0.255 256
/ 25 255.255.255.128 0.0.0.127 128
/ 26 255.255.255.192 0.0.0.63 64
/ 27 255.255.255.224 0.0.0.31 32
/ 28 255.255.255.240 0.0.0.15 16
/ 30 255.255.255.252 0.0.0.3 4

Jokerteckensmask Nyckelord: värd och valfri

Cisco IOS tillhandahåller två förkortade nyckelord så att du inte behöver skriva vanliga jokerteckenmasker i en åtkomstkontrolllista:

  • värd — ersätter jokerteckensmasken 0.0.0.0 och matchar en exakt IP-adress. Till exempel, värd 10.0.1.5 är det samma som 10.0.1.5 0.0.0.0.
  • vilken som helst — ersätter jokerteckenmasken 255.255.255.255 och matchar alla IP-adresser. Till exempel, vilken som helst är det samma som 0.0.0.0 255.255.255.255.

Dessa nyckelord gör ACL-satser kortare och lättare att läsa, och de minskar risken för ett typing fel i masken.

Var kan Wildcard-masker användas?

Jokerteckenmasker används i åtkomstkontrolllistor (ACL:er). De är användbara när du har ett stort nätverk och behöver kontrollera trafikflödet mellan flera routrar och LAN-segment. När du hanterar ett stort nätverk med flera routrar kommer du sannolikt att stöta på Cisco jokerteckenmasker.

Jokerteckenmasker visas även i dynamiska routing protokoll som OSPF och EIGRP, där nätverkssatser använder dem för att välja de gränssnitt som deltar i routningen. Du måste ställa in din jokerteckenmask noggrant så att endast den avsedda trafiken kan passera genom din router.

Vanliga frågor

Ja. OSPF- och EIGRP-nätverkssatser använder jokerteckenmasker för att avgöra vilka gränssnitt som hör till en routingprocess. Till exempel aktiverar nätverk 10.0.1.0 0.0.0.255 routing på varje gränssnitt i subnätet 10.0.1.0/24.

Ja. Till skillnad från en subnätmask behöver en jokerteckenmask inte sammanhängande bitar. En mask som 0.0.0.254 matchar bara jämna adresser i den sista okteten, vilket är användbart för att välja alternerande värdar i en ACL.

Termen är vanligast på Cisco IOS, men konceptet med invers mask förekommer även på andra plattformar. Många brandväggar och routrar använder samma matchnings-och-ignoreringslogik, även när de märker den annorlunda eller accepterar en prefixlängd istället.

Nej. En jokerteckenmask är bara matchningslogik som används i ACL:er och routingsatser. Den modifierar inte paketinnehållet eller lägger till mätbar fördröjning; den talar helt enkelt om för enheten vilka adressbitar som ska jämföras.

En felaktig mask matchar för många eller för få adresser. En för bred mask kan tillåta oönskad trafik och skapa säkerhetshål, medan en för smal mask kan blockera legitima värdar. Verifiera alltid intervallet innan du tillämpar regeln.

Ett CIDR-prefix som /24 är en förkortning för en sammanhängande subnätmask. En jokerteckenmask som 0.0.0.255 uttrycker samma intervall för matchning men kan också beskriva icke-sammanhängande mönster som ett enkelt prefix inte kan representera.

Ja. AI- och maskininlärningsassistenter kan konvertera ett subnät eller adressintervall till rätt jokerteckensmask, flagga masker som är för tillåtande och förklara varje regel på ett enkelt språk. En ingenjör bör fortfarande granska utdata före driftsättning.

GitHub Copilot kan utarbeta ACL- och OSPF-satser med jokerteckenmasker från en kort kommentar som beskriver målintervallet. Kontrollera alltid att den genererade masken matchar de avsedda adresserna innan du tillämpar den på en produktionsenhet.

Sammanfatta detta inlägg med: