Vendor Lock in; Leve de Open Source community

Wat is het tegenwoordig toch vermoeiend om bij te blijven als het gaat om IT certificering en hoe snel Operating Systemen (met name Windows, Android en IOS) hardware niet meer supporten of ondersteunen.

Gaat het om certificaten verlopen deze tegenwoordig al na 2 jaar wat vroeger langer was en je kon ook met verlopen certificaten aan de slag. Want als een certificaat verloopt is niet ineens je kennis en ervaring weg. Ook al heb je je  20 jaar geleden op engineeringsniveau gecertificeerd en meer als 20 jaar werkervaring in de IT klap je tegenwoordig om de 2 a 3 jaar terug naar Associate (beginners niveau) en snap je er volgens werkgevers en bedrijven natuurlijk niets meer van als je geen recent certificaat hebt. Uitzonderingen daargelaten natuurlijk, denk aan Linux, Ethernet, FCoE en TCP/IP kennis.

Certificaten recent houden was niet zo erg toen een specialisatie nog erkend werd maar tegenwoordig moet je het  schaap met de 5 poten ofwel DevOps Engineer zijn. Er wordt van je verwacht nu Hyper Converged helemaal hot is dat je op alle 3 de gebieden; storage, netwerk en compute Engineer (Operations) level bent en natuurlijk ook programeer en scripting (Development) kennis bezit. Dit komt er zo een beetje op neer dat je de volgende certificaten moet bezitten en recent houdt; CCNE, MCSE, VCP en op  programmeur/scripting gebied de volgende talen kent;  C++, Java, Ruby, Python, Go, PHP Powershell en gaat zo maar door. Daarnaast komen de eigen oplossingen op het gebied van Configuration Management (CM) en Orchistrator oplossingen natuurlijk er ook nog eens bij. Een vendor wil natuurlijk dat je hun oplossing gebruikt en niet van een ander (Vendor Lock in).

Je zou bijna kunnen zeggen dat een DevOps Engineer zoiets is als een bouwvakker die zowel architect is als loodgieter, elektricien en timmerman is, wordt wel verwacht dat je ook goed kan metselen en tegelen. Hebben we het over de snelle wisselingen van versies en het stoppen van support is dit nog wel het ergst bij mobiele telefoons en tabs. Heb je bijvoorbeeld een oude laptop of tab kan je op een gegeven moment geen gebruik meer maken van bepaalde apps of webbrouwsers worden niet meer ondersteunt en een bepaalde versie OS. Er wordt dan gezegd dat dit gedaan wordt uit security redenen maar waarom moet je dan een nieuwe tab of laptop kopen om dit werkend te krijgen? Het blijft gek dat we maar accepteren dat we een mobiele telefoon of tab na 2 jaar al niet meer gesupport wordt. Hier wordt zelfs tegen de grote jongens een rechtszaak aangespannen om langer support af te dwingen. Met laptops en computers is dit ook het geval alleen worden deze wat langer gesupport zolang de vendor hier zin in heeft of dit toelaat. Gelukkig zijn er voor oudere computers meer alternatieven waaronder Ubuntu, Debian en voor de echt oudere laptops Linux Mint. Opm: O ja Android is eigenlijk ook Open Source maar door de fabrikanten die hier het 1 en ander omheen bouwen en de hardware leveren wordt de lengte van support bepaald.

Infrastructure as a Code;

ook hot. Steeds vaker worden de tools slimmer en intelligenter en om deze goed te beheren of aan te sturen heb je wel kennis nodig van hoe je script.

Ik zal een aantal CM tools noemen en dan kom je er achter dat ieder merk wel zijn eigen oplossing heeft. Niet te vergeten Orchestrator tooling . Ik zal later nog een stukje schrijven wat hier nu precies het verschil in is maar eerst een aantal  verschillende oplossingen met de daarbij genoemde commerciële aanbieders:

  • Microsoft: System Center Orchistrator of SCCM.
  • Dell/EMC/VMWARE: vRealize Orchistrator of vRealize CM
  • Cisco: ACI

Ik was bezig mij te hercertificeren maar omdat VMware ESX  niet zomaar gratis te gebruiken is wat voorheen wel zo was  en ook nog eens eist dat je een cursus volgt van ongeveer 4500 a 5000,- eurotjes  voordat je een examen mag doen ga je ook kijken naar andere partijen. Neem nu Microsoft. Wil je hier een LAB of een test omgeving opbouwen kan je bij Microsoft wel gebruik maken van een trail periode maar als je een omgeving wilt opbouwen met cliënt software (Windows 7 of 10) dan wordt dit alweer moeilijker. Kies je voor Cisco dan heeft die op dit moment ook veel concurrentie van  VMWare NSX en Juniper . Ik wist het  even niet meer wat nu een juiste keus was als het gaat om certificering en de keuze van de grote commerciële oplossingen. Daarnaast wordt ik erg moe van het per versie steeds veranderen van de interface. Waarom moet dit nou steeds? Wat verbeterd nu echt aan de onderkant als je de voorkant verandert? Dat je het niet meer kan vinden ja, het icoontje de plek de naam zijn verandert.  Daarnaast merk je bij het examen doen dat ze eigenlijk ook veel vragen over hun eigen CM of Orchistrator oplossingen en dan heb ik het nog niet eens over de eigen oplossingen van Operation Management tooling (waaronder SCOM enz maar hier later meer over op hoehetwelmoet.nl). Het wordt dan wel erg veel van het goede als je wilt blijven voldoen aan de Engerings eisen van de grote 3.

Ik krijg  op dit moment steeds meer  behoefte aan de Opensource oplossingen. Neem OpenStack en  Linux in zijn algemeen. Geweldig hoe dit zich heeft ontwikkeld. Ook op het gebied van CM en Orchistrator tooling zijn hier goede oplossingen voor, kijk eens naar Chef en Puppet.

Laats heb ik nog wel mijn Cisco Datacenter certificering bijgewerkt en wilde veder gaan met mijn studie notes van zowel VMware en Microsoft . Ik liep tegen teveel beperkingen van licenties aan vendor lock in gezeik en interface perikelen en heb besloten voorlopig hier niet meer verder aan te werken. Sorry hiervoor maar kom vaker terug op de site hoehetwelmoet.nl waar ik mij meer zal gaan richten op de Open Source varianten. Leve de Open Source community.

DevOps en IaC

Naast het ontwikkelen en beheren van een Enterprise-architectuur, zijn er methodieken en frameworks om ICT infrastructuren projectmatig of procesmatig te realiseren en te beheren (beheerprocessen).

Zelf ben ik praktisch ingericht en zie ITIL, BiSL, Prince2 en  SCRUM als hulpmiddelen om iets op een bepaalde manier te bereiken of te beheren.

ITIL is ontwikkeld als een referentiekader voor het inrichten van de beheerprocessen binnen een IT-organisatie, het is geen methode of model maar net als Prince2 een verzameling van best practices. Waar Prince2 wordt gebruikt om technische ICT projecten te realiseren zoals bijvoorbeeld de bouw van een nieuwe infrastructuur of een nieuw te ontwikkelen datacenter, wordt Scrum meer gebruikt bij software ontwikkeling.  Scrum wordt vaak als methodiek gebruikt om DevOps (Continuous delivery) in zijn geheel aan te sturen.  Waar vroeger Development en Operations meer gescheiden afdelingen waren worden deze steeds meer samengevoegd en Agile aangestuurd.

Zo zie ik de laatste tijd ook DevOps Engineers gevraagd worden. DevOps omschrijft meer de manier hoe er gewerkt kan worden en is zeker geen specialist op zichzelf. Dit werk verwarrend, maar hierover later meer net als de de volgende gebruikte term die ook weer de moeite waard is te onderzoeken: Infrastructure as code (IaC).

De markt wil een  DevOps specialist

Gevraagd: Datamanagementspecialist,

Mijn vraag is; Datamanagement een Big Data specialisme?

Zo was je 10 jaar geleden een datamanagement expert die zich bezig hield met storage, performance, beschikbaarheid, recovery, backup, hersteltijden en maximaal dataverlies. Algemeen begrip hiervoor was toen business continuity en zorgen dat de boel blijft draaien binnen de gewenste servicelevels. Naast beschikbaarheid en performance waren 2 waardes belangrijk; RPO en RTO. RTO’s (tijdsduur, tijd die nodig is voor herstel van de dienst) en RPO’s (herstelpunt van de data en dus maximale dataverlies). Wat je nu vaak tegenkomt is dat er datamanagement specialisten gevraagd worden die database kennis en data analyse tooling kennis moeten hebben. Vreemd, dit lijkt mij een Big data specialisatie. Big data gaat over informatie analyses en de conclusies of statiek informatie. Is er dan geen verschil tussen data en informatie?

Ja natuurlijk wel. Data veiligstellen kan zonder de informatie of inhoud ervan te weten. Bijvoorbeeld een Word document of zelfs een gehele database kan hersteld worden zonder hiervan exact te weten wat er in de brief staat of hoe de database in mekaar zit en welke informatie deze bevat. Daarom zou ik zeggen dat een datamanagementspecialist geen informatiespecialist is en dus ook geen Big data specialist. Lijkt mij duidelijk, maar is dit ook duidelijk als het gaat om de vraag naar ICT specialisten?

We komen ICT specialisten tekort. Het begint mij duidelijk te worden waarom er een tekort aan ICT techneuten is. Waar vroeger een duidelijke scheiding was tussen Development en Operations wordt er nu het schaap met de 5 poten gezocht die alles kan. De markt wil een  DevOps specialist.

Als organisaties weer goed personeel willen krijgen moet men KIS aanhouden. Accepteer dat ICT niet simpel is maar probeer het simpel te houden. Er is functioneel in de ICT zelfs sinds het mainframe niks veranderd als het gaat om infrastructuur (Server, Netwerk, Storage) en softwareoplossingen, database expert enz. Specialisaties werden vroeger beter erkend en nu wilt men de DevOps specialist

KIS.

HOW2 Installeren en Configureren van Windows 2016 Server Core:

Het hoe Installeren en Configureren van Windows Server Core:

Selecteer bij de Windows setup het OS wat je wilt installeren:

Kies Windows Server 2016 Standard Edition of Windows Server 2016 Datacenter Edition zonder (desktop Expirience).

Als de installatie is afgerond zal er alleen een cmd venster aanwezig zijn. Wel zal er de eerste keer een paswoord moeten worden ingesteld.

Een aantal zaken zal moeten worden geconfigureerd waaronder de netwerk adapter.

Om dit te kunnen configureren start je eerst C:\Users\Administrator>powershell

Voer het commando: PS C:\Users\ Administrator>get-netadapter uit om de Ifindex Status te controleren. Deze waarde is nodig om de netwerk adapter te configureren.

Configureer de netwerk adapter, In het voorbeeld hier zijn: 2 de interface, 10.10.2.229 het IP adres van de server, 24 het gebruikte subnet mask (/24 ofwel 255.255.255.0) en 10.10.2.1 de default gateway.

Voer het commando: PS C:\Users\ Administrator>new-ipaddress -interfaceindex 2 -ipaddress 10.10.2.229 -prefixlength 24 -defaultgateway 10.10.2.1

Configureer de DNS server, in het voorbeeld hier betreft het dezelfde netwerkkaard en 2 DNS servers namelijk: 10.10.2.225 en 8.8.8.8

Voer het commando: PS C:\Users\ Administrator>set-dnsclientserveraddress -interfaceindex 2 -serveraddresses (“10.10.2.225″,”8.8.8.8”)

Tip: Door de Tab te gebruiken na het invoeren van een aantal karakters hoeft niet het gehele commando uitgetikt te worden.

Controleer de gegevens:

Dit kan ook met de commando’s die normaal onder een command prompt werken waaronder: ipconfig /all

Of voer powershell commando’s uit:

PS C:\Users\ Administrator>get-netipaddress | format-table

PS C:\Users\ Administrator>get-netipconfiguration

PS C:\Users\ Administrator>get-dnsclientserveraddress

Configureer de servernaam Server1 en voeg hem toe tot het domein: domein.local.

Voer het commando: PS C:\Users\ Administrator>add-computer -domainname domein.local -newname Server1 -credential domein\administrator

Er verschijnt een venster om het paswoord in te voeren.

Het is ook mogelijk de serverconfiguratie Sconfig.exe te gebruiken om de serverconfiguratie te wijzigen als het gaat om naam server, naam domein enz. Of gebruik het Netdom.exe tool. Ik heb hier al een aantal voorbeelden van gegeven in mijn aantekeningen (notes).

Herstart de server:

PS C:\Users\ Administrator>shutdown -r

HOW2 hoe activeer en configureer je ssh, CONSOLE en disable telnet in IOS

Het is van belang het ip domain ingesteld (ip domain-name) te hebben en een crypto key te hebben gegenereerd. Daarnaast heb ik een user aangemaakt speciaal voor ssh gebruik:
Maak een user aan en genereer een crypto key:
switchnaam#conf t

switchnaam(config)#username remoteuser password password
switchnaam(config)#crypto key generate rsa
How many bits in the modulus [512]: 1024
% Generating 1024 bit RSA keys, keys will be non-exportable…[OK]

HOW2 configureer de CONSOLE port in IOS 12.2
switchnaam>enable
Password:
switchnaam#conf t
switchnaam(config)#line con 0
switchnaam(config-line)#password password
switchnaam(config-line)#login
switchnaam(config-line)#end
switchnaam#exit
en check of het werkt. Pas hierna:
switchnaam>enable
Password:
switchnaam#write mem

HOW 2 enable en configure ssh, en disble telnet:
switchnaam#show ip ssh
SSH Enabled – version 1.99
Authentication timeout: 120 secs; Authentication retries: 3
switchnaam#
switchnaam#conf t
Enter configuration commands, one per line. End with CNTL/Z.
switchnaam(config)#ip ssh version ?
<1-2> Protocol version
switchnaam(config)#ip ssh version 2
switchnaam(config)#end
switchnaam#show ip ssh
SSH Enabled – version 2.0
Authentication timeout: 120 secs; Authentication retries: 3

switch(config)#line vty 0 15
switch(config-line)#login local
switch(config-line)#transport input ssh
switch(config-line)#end
switch#write mem
Building configuration…
[OK]

HOW2 hoe encrypt je de paswoorden in de opstart configuratie:
# De password’s zijn niet encrypted (clear text), dit kan alsvolgt:
# Enter configuration commands, one per line. End with CNTL/Z.
switch(config)#service password-encryption
switch(config)#end
switch#show run zal nu geen clear text meer in de running-config weergeven
switch#write mem

HOW2 scratch config catalyst switch

# Het resetten van een Catalyst switch (3560 idg)
# Hou de MODE knop net zolang ingedrukt dat alle lampjes niet meer blinken. Laat dan de MODE knop los
# De switch reset zichzelf naar default. Inlog en enable is hierna zonder password.

# Een andere optie om de configuratie te verwijderen (mits je kan inlogen en de global configuratie kan starten) is de volgende stappen uitvoeren:
Stap 1: login en enable waarna erase files:
Switch>enable
Switch#erase startup-config
Erasing the nvram filesystem will remove all configuration files! Continue? [confirm] <ENTER>
[OK]
Erase of nvram: complete
Switch#

Stap 2 check configuratie bestanden waaronder vlan.dat
switch#dir
switch#delete flash:vlan.dat
Delete filename [vlan.dat]?
Delete flash:vlan.dat? [confirm] <ENTER>
switch#
Switch#reload
Proceed with reload? [confirm]

System configuration has been modified. Save? [yes/no]: y

# Start met een schone configuratie: bij een reset van de switch wordt er gevraagt of je de initiele configuratie wil starten:
Would you like to enter the initial configuration dialog? [yes/no]: y
Would you like to enter basic management setup? [yes/no]: y

Enter host name [Switch]: switchnaam
Kan ook in mode (config)# hostname switchnaam
Enter enable secret: vulpaswoordin
Enter enable password: vulpaswoordin
Enter virtual terminal password: vulpaswoordin
Configure SNMP Network Management? [no]: <ENTER> of y
Community string [public]: <ENTER>

Enter interface name used to connect to the
management network from the above interface summary: vlan1

Configuring interface Vlan1:
Configure IP on this interface? [no]: y
IP address for this interface: 192.168.x.x
Subnet mask for this interface [255.0.0.0] : 255.255.255.0
Would you like to enable as a cluster command switch? [yes/no]: n

[0] Go to the IOS command prompt without saving this config.
[1] Return back to the setup without saving this config.
[2] Save this configuration to nvram and exit.

Enter your selection [2]: <ENTER>

Building configuration…
[OK]
Use the enabled mode ‘configure’ command to modify this configuration.

switchnaam>enable
Password: secret password
switchnaam#conf t
switchnaam(config)#hostname switch
switchnaam(config)#ip domain-name vulin.local
switchnaam(config)#ip name-server 8.8.8.8 4.4.4.4
switchnaam(config)#ip default-gateway x.x.x.x
switchnaam(config)#end
switchnaam1#reload

System configuration has been modified. Save? [yes/no]: y
Building configuration…
[OK]
Proceed with reload? [confirm] <ENTER>

Opm: het is nu mogelijk via de webinterface: http://x.x.x.x (vlan1 IP). Mids je gebruik maakt van oudere browsers waaronder IE 6 & 7 of
Firefox 1.5, 2.0 en 3. De nieuwe brouwsers hebben een te nieuwe Java of zelfs geen Ja meer waaronder de nieuwste versie FireFox.

Het gaat uiteindelijk om de console ervaring. Tik is meer waard dan klik 😉

Over Classless addressing

Zie Classfull addressering waar Class A, B en C netwerk adressen worden bepaald door een aantal vaste bits “on” (1) en de resterende “off”bits (0) het aantal hosts bepalen. Alle hosts (alle nodes) gebruiken in het netwerk exact dezelfde subnet mask. Class A 8 bits on (255.0.0.0), Class B 16 bits (255.255.0.0) en Class C 24 bits (255.255.255.0), we noemen dit de default masks en deze kunnen niet wijzigen.

De Classfull IP adressering geeft ons hosts reeksen (range) van 256 t/m 16.8 miljoen. Door de enorme behoefte aan meer IP adressen, flexibiliteit en het niet onnodig verspelen van IP adressen raakt deze manier van IP adrressering, ondanks het mechanisme van subnetworking (borrowing hosts bits) verouderd en onbruikbaar voor de huidige behoefte die Internet kent.

CIDR (cider) is ontwikkeld om bovenstaande problematiek te verhelpen. CIDR vervangt de Classfull adressering methodiek. In plaats van te werken met de gelimiteerde network IDs (or prefixes) van 8, 16 of 24, gebruikt CIDR prefixes van 13 t/m 27 bits. Hiermee kunnen IP blokken (blocks) worden toegekend en netwerken worden gecreerd zo klein als 32 hosts of zo groot als 500.000 hosts.

Classless/CIDR gaat verder en laat het toe om met een / (slash notatie) het netwerkdeel te laten variëren. We gebruiken dus het gehele 32 bit deel en wijzen een netwerkdeel toe met “on” (Prefix) en een host deel met “off”. CIDR heeft dus de schaalbaarheid van IPv4 enorm verbeterd met het volgende:

  • Vervanging van classfull adressering met meer flexibiliteit en het onnodig verspelen van ongebruikte IP addressering.
  • Route aggregation and suppernetting (samenvatten en inkorten van routing regels).

Naast CIDR is er ook sprake van VLSMs (Variable Length Subnet Masks). VLSM is ontwikkeld om meerdere subnetwerken verder onder te verdelen in meerdere IP subnetwerken. Elk netwerk segment kan hierdoor een ander subnet mask gebruiken.

Samengevat; door het gebruik van CIDR en VLSM verspil je geen IP adressering zoals bij Classfull het geval is, het maakt route aggregation (suppernetting) mogelijk. Suppernetting is alleen te gebruiken bij routers die een Classless routing protocol geactiveerd hebben zoals OSPF of EIGRP. Cisco IOS kan niet geconfigureerd worden gebruik makend van de / (slash) notatie, NXOS kan dit wel.

Het creëren van Classless IP reeksen:

Voordat je begint met het creëren van Classless subnet masks inventariseer het volgende:

  1. Hoeveel netwerk IDs zijn er nodig?
  • 1 voor elk LAN subnet
  • 1 voor deze LAN subnet naar WAN connectie
  1. Bepaal hoeveel hosts IDs er per subnet er nodig zijn?
  • 1 voor elke TCP/IP host
  • 1 voor elke router interface
  1. Gebaseerd op bovenstaand, creëer je het volgende:
  • 1 subnet mask voor het gehele netwerk
  • Een uniek subnet ID voor elk fysiek segment
  • Een reeks host IDs voor elk subnet

Om snel te kunnen subnetten is het handig de “Powers of 2” uit je hoofd te kennen.

2x 21 22 23 24 25 26 27
Waarde 2 4 8 16 32 64 128
2x 28 29 210 211 212 213 214
Waarde 256 512 1.024 2.048 4.096 8.192 16.384

Hint: onthoudt vetgedrukte waardes om bijvoorbeeld snel 210 te berekenen, 2×256 = 512 2x 512 = 1.024.

Subnet Mask CIDR Waarde Subnet Mask CIDR Waarde
255.0.0.0 /8 255.255.0.0 /16
255.128.0.0 /9 255.255.128.0 /17
255.192.0.0 /10 255.255.192.0 /18
255.224.0.0 /11 255.255.224.0 /19
255.240.0.0 /12 255.255.240.0 /20
255.248.0.0 /13 255.255.248.0 /21
255.252.0.0 /14 255.255.252.0 /22
255.254.0.0 /15 255.255.254.0 /23

Waarde /24 t/m /30 is uitgewerkt bij Subnetting Class C Addresses:

Hou in gedachte dat een CIDR range /8 t/m /15 alleen een Class A kan zijn. /16 t/m /23 een Class A en B. /24 t/m /30 een Class A, B en C network addresses. Bij weke Class je ook gebruikt is /30 de grootst mogelijke subnet mask omdat er minimaal 2 bits over moeten blijven voor hosts bits.

Class A: /8 t/m /30

Class B: /16 t/m /30

Class C: /24 t/m /30

Todo: Voorbeelden van Class C, B en A CIDR berekeningen uitwerken.

 

Subnetting Class C Addresses:

Subnet Mask CIDR Waarde Binaire Waarde Decimale Waarde
255.255.255.0 /24 0000 0000 0
255.255.255.128 /25 1000 0000 128
255.255.255.192 /26 1100 0000 192
255.255.255.224 /27 1110 0000 224
255.255.255.240 /28 1111 0000 240
255.255.255.248 /29 1111 1000 248
255.255.255.252 /30 1111 1100 252

Wanneer het subnet mask voor een netwerk bekend is kan men de hoeveel subnets, aantal mogelijke hosts en bij behorende  broadcast bepalen of uitwerken. Dit kan worden bepaald door de volgende vragen te beantwoorden:

  1. Hoeveel subnets zijn er mogelijk met het bekende subnet mask?
  2. Hoeveel hosts zijn er per subnet beschikbaar?
  3. Wat zijn de beschikbare subnets?
  4. Wat is het broadcast adres voor elk subnet?
  5. Wat zijn beschikbare hosts voor elk subnet?

 

  1. Hoeveel subnets bij subnet mask 255.255.192? Binair 1100 0000 = 22 = 4 subnets
  2. Hoeveel hosts per subnet? 26 – 2 = 62 hosts per subnet
  3. Wat zijn de beschikbare subnets? 256 – subnet mask = 256 -192 = 64 blocksize beginnend vanaf 0 = 0, 64, 128, 192
  4. Wat zijn de bijbehorende broadcast adressen bij de subnets? Altijd het getal voorafgaand aan het volgende subnet. 63, 127, 191. Zie tabel
  5. Wat zijn de valide hosts? Eerst beschikbare host adres t/m laatst beschikbare hosts adres. Zie tabel

 

Subnets 0 64 128 192
Eerste host 1 65 129 193
Laatste host 62 126 190 254
Broadcast 63 127 191 255

Bovenstaand is de uitwerking van een 255.255.255.192 (/26) subnet mask.

Volgende voorbeeld van een /28 netwerk

Netwerk adres: 192.168.10.0

Subnet mask: 255.255.255.240

  1. Aantal Subnets? 240 = 1111 0000. 24 = 16
  2. Hosts? 24 – 2 = 14
  3. Te gebruiken subnets? 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208, 224 en 240
  4. Broadcast adres voor elk subnet? Zie tabel
  5. Te gebruiken hosts? Zie tabel
Subnets 0 16 32 ……. 224 240
Eerste host 1 17 33 225 241
Laatste host 14 30 46 238 254
Broadcast 15 31 47 239 255

 

Het volgende binnen Class C / slash notatie (CIDR) is handig om uit het hoofd te leren:

Van /25 notatie weten we het volgende:

·         128 mask

·         1 bit “on” 7 bits “off” (1000 0000)

·         Block size van 128 (256 – 128)

·         2 subnets, elk 126 hosts

Van /28 notatie weten we het volgende:

·         240 mask

·         4 bits “on” 4 bits “off” (1111 0000)

·         Block size van 16 (256 – 240)

·         16 subnets, elk 14 hosts

 

Van /26 notatie weten we het volgende:

·         192 mask

·         2 bits “on” 6 bits “off” (1100 0000)

·         Block size van 64 (256 – 192)

·         4 subnets, elk 62 hosts

Van /29 notatie weten we het volgende:

·         248 mask

·         5 bits “on” 3 bits “off” (1111 1000)

·         Block size van 8 (256 – 248)

·         32 subnets, elk 6 hosts

 

Van /27 notatie weten we het volgende:

·         224 mask

·         3 bits “on” 6 bits “off” (1110 0000)

·         Block size van 32 (256 – 224)

·         8 subnets, elk 30 hosts

Van /30 notatie weten we het volgende:

·         252 mask

·         6 bits “on” 2 bits “off” (1111 1100)

·         Block size van 4 (256 – 252)

·         64 subnets, elk 2 hosts

 

Uitwerken Class B en A met CIDR

Subnetting Class B addresses

Subnet Mask CIDR Waarde Binaire waarde octet 3 en 4 Decimale Waarde
255.255.0.0 /16 0000 0000 0000 0000 0
255.255.128.0 /17 1000 0000 0000 0000 128.0
255.255.192.0 /18 1100 0000 0000 0000 192.0
255.255.224.0 /19 1110 0000 0000 0000 224.0
255.255.240.0 /20 1111 0000 0000 0000 240.0
255.255.248.0 /21 1111 1000 0000 0000 248.0
255.255.252.0 /22 1111 1100 0000 0000 252.0
255255.254.0 /23 1111 1110 0000 0000 254.0
255.255.255.0 /24 1111 1111 0000 0000 255.0
255.255.255.128 /25 1111 111 1000 0000 255.128
255.255.255.192 /26 1111 111 1100 0000 255.192
255.255.255.224 /27 1111 111 1110 0000 255.224
255.255.255.240 /28 1111 111 1111 0000 255.240
255.255.255.248 /29 1111 111 1111 1000 255.248
255.255.255.252 /30 1111 111 1111 1100 255.252

To do uitwerken voorbeelden: /17, /20, /25 en /26

Volgende voorbeeld van een /17 netwerk

Netwerk adres: 172.16.10.0

Subnet mask: 255.255.128.0

  1. Aantal Subnets? 128 = 1000 0000. 0000 0000 21 = 2
  2. Hosts? 215 – 2 = 32.766
  3. Te gebruiken subnets? 256 – 128 = 128; 0.0, 128.0
  4. Broadcast adres voor elk subnet? Zie tabel
  5. Te gebruiken hosts? Zie tabel
Subnets 0.0 128.0
Eerste host 0.1 128.1
Laatste host 127.254 255.254
Broadcast 127.255 255.255

Volgende voorbeeld van een /20 netwerk

Netwerk adres: 172.16.10.0

Subnet mask: 255.255.240.0

  1. Aantal Subnets? 240 = 1111 0000. 0000 0000 24 = 16
  2. Hosts? 212 – 2 = 4.094
  3. Te gebruiken subnets? 256 – 240 = 16; 0.0, 16.0, 32.0, 48.0, t/m 15×16= 240.0
  4. Broadcast adres voor elk subnet? Zie tabel
  5. Te gebruiken hosts? Zie tabel
Subnets 0.0 16.0 32.0 ……. 224.0 240.0
Eerste host 0.1 16.1 32.1 224.0 240.1
Laatste host 15.254 31.254 47.254 239.254 255.254
Broadcast 15.255 31.255 47.255 239.255 255.255

Volgende voorbeeld van een /24 netwerk (Class C) nee maar een Class B met 28

Netwerk adres: 172.16.10.0

Subnet mask: 255.255.255.0

  1. Aantal Subnets? 255 = 1111 1111. 0000 0000 28 = 256
  2. Hosts? 28 – 2 = 254
  3. Te gebruiken subnets? 256 – 255 = 1; 0.0, 1.0, 2.0, 3.0, t/m 255
  4. Broadcast adres voor elk subnet? Zie tabel
  5. Te gebruiken hosts? Zie tabel
Subnets 0.0 1.0 2.0 ……. 254.0 255.0
Eerste host 0.1 1.1 2.1 254.1 255.1
Laatste host 0.254 1.254 2.254 254.254 255.254
Broadcast 0.255 1.255 2.255 254.255 255.255

Volgende voorbeeld van een /25 netwerk

Netwerk adres: 172.16.10.0

Subnet mask: 255.255.255.128

  1. Aantal Subnets? 255 = 1111 1111. 1000 0000 29 = 512
  2. Hosts? 27 – 2 = 126

Vergeet niet dat de volgende optie het 4de octet ook meegerekend moet worden:

Aantal subnets 128 = 1000 0000 21 = 2, 256 – 128 = 128; 0, 128

  1. Te gebruiken subnets? 256 – 255 = 1; 0.0, 0.128, 1.0, 1.128.2.0, 2.128, t/m 255.128
  2. Broadcast adres voor elk subnet? Zie tabel
  3. Te gebruiken hosts? Zie tabel
Subnets 0.0 0.128 2.0 2.128 …… 255.0 255.128
Eerste host 0.1 0.129 2.1 2.129 255.1 255.129
Laatste host 0.126 1.254 2.126 2.254 255.126 255.254
Broadcast 0.127 1.255 2.127 2.255 255.127 255.255

Volgende voorbeeld van een /26 netwerk

Netwerk adres: 172.16.10.0

Subnet mask: 255.255.255.192

  1. Aantal Subnets? 192 = 1111 1111. 1100 0000 210 = 1024
  2. Hosts? 26 – 2 = 62

Vergeet niet dat de volgende optie het 4de octet ook meegerekend moet worden:

Aantal subnets 192 = 1100 0000 22 = 4, 256 – 192 = 64; 0, 64, 128, 192

  1. Te gebruiken subnets? 256 – 255 = 1; 0.0, 0.64, 0.128, 0.192. 1.0, 1.64, 1.128, t/m 255.192
  2. Broadcast adres voor elk subnet? Zie tabel
  3. Te gebruiken hosts? Zie tabel
Subnets 0.0 0.64 0.128 0.192 1.0 …… 255.128 255.192
Eerste host 0.1 0.65 0.129 0.193 255.1 255.129
Laatste host 0.62 0.254 0.190 0.254 255.126 255.254
Broadcast 0.63 0.127 0.191 0.255 255.127 255.255

Volgende voorbeeld van een /27 netwerk

Netwerk adres: 172.16.10.0

Subnet mask: 255.255.255.224

  1. Aantal Subnets? 255 = 1111 1111. 1110 0000 211 = 2048
  2. Hosts? 25 – 2 = 30

Vergeet niet dat de volgende optie het 4de octet ook meegerekend moet worden:

Aantal subnets 224 = 1110 0000 23 = 8, 256 – 224 = 32; 0, 32, 64, 96, 128, 160, 192, 224

  1. Te gebruiken subnets? 256 – 255 = 1; 0.0, 0.32, 0.64, … 1.0, 1.32 t/m 255.224
  2. Broadcast adres voor elk subnet? Zie tabel
  3. Te gebruiken hosts? Zie tabel
Subnets 0.0 0.32 0.64 0.96 1.0 1.32 255.192 255.224
Eerste host 0.1 0.33 0.65 …. 1.1 …. 255.193 255.225
Laatste host 0.32 0.62 0.94 …. ….. 255.222 255.254
Broadcast 0.31 0.63 0.95 ….. 1.31 …… 255.223 255.255

 

Het is handig de verschillende Classes en /notaties eens goed voor jezelf te hebben uitgewerkt want hierdoor leer je patronen herkennen en bit notaties uit je hoofd te kennen.

De volgende voorbeelden zijn om snel te berekenen of een IP address juist is en wat het bijbehorende subnet en broadcast is:

Wat is het subnet en broadcast adres van 172.16.10.33 255.255.225.224 /27:

Het 4de octet is hier het interessants om te onderzoeken: 256 – 224 = 32; 10.0, 10.32, 10.64 … enz. maar niet meer van belang omdat 33 tussen 10.32 en 10.64 inzit.

Subnet is dus 172.16.10.32 en broadcast 172.16.10.63

Deze was makkelijk maar de volgende voorbeelden zijn moeilijker, de 4de octets van het submask is 0 dus wordt er altijd gestart met subnet  0 t/m broadcast 255

Wat is het subnet en broadcast adres van 172.16.66.10 255.255.192.0 /18:

Het 3de octet is hier het interessants om te onderzoeken: 256 – 192 = 64; 0, 64, 128 … enz. maar niet meer van belang omdat 66 tussen subnet 64.0 en 128.0 inzit.

Subnet is dus 172.16.66.64.0 en broadcast 172.16.127.255

 

Wat is het subnet en broadcast adres van 172.16.50.10 255.255.224.0 /19:

Het 3de octet is hier het interessants om te onderzoeken: 256 – 224 = 32; 0, 32, 64 … enz. maar niet meer van belang omdat 50 tussen subnet 32.0 en 64.0 inzit.

Subnet is dus 172.16.32.0 en broadcast 172.16.63.255

Wat is het subnet en broadcast adres van 172.16.46.255 255.255.240.0 /20:

Het 3de octet is hier het interessants om te onderzoeken: 256 – 240 = 16; 0, 16, 32, 48 … enz. maar niet meer van belang omdat 46 tussen subnet 32.0 en 48.0 inzit.

Subnet is dus 172.16.32.0 en broadcast 172.16.47.255

Stel dat gevraagd zou worden of 172.16.46.255 een valide adres zou zijn dan is dit ja:

Subnets 32.0 48.0 64.0
Eerste host 32.1 48.1
Laatste host 47.254 63.254
Broadcast 47.255 63.255

Van het berekenen van Class A situaties worden later nog een aantal voorbeelden van uitgewerkt, het werkt hetzelfde als het gaat om de getallen, elk octet is 8 bits en dus:

0= start subnet, dan 128, 192, 224, 240, 248, 252, 254, of de 255 wat of een broadcast is of een 8 bits subnet (/16 voor een A class of /24 voor een B class).

Over Classfull addressing

Classfull addressing is opgedeeld in classificaties, de complete 32 bits worden opgedeeld in  Class A t/m D waarbij het eerste deel het aantal mogelijke netwerken betreft en het overgebleven deel het aantal host adressen betreft. Een bit of een aantal voorafgaande (Prefix Vaulue bit(s) bepaald de address Class, deze bits worden ook wel de High-order bits genoemd.

Classful addressing High-order bits Eerste octet address range Aantal bits en te gebruiken netwerken
A 0 (1 bit) 0 to 127 * 8 -1 = 27= 128-2= 126
B 10 (2 bits) 128 to 191 16-2 = 214= 16.384
C 110 (3 bits) 192 to 223 24-3= 221= 2.097,152
D (Multicast) 1110 (4 bits) 224 to 239

*Zo betstaat het Adress Class A uit 1 octet netwerken en 3 octets hosts. Zo maak je met een Class A netwerk 1 t/m 126 (- 0.0.0.0 and 127.x.x.x reserved loopback address om te testen en troubleshooting) en meer als 16 miljoen hosts per netwerk.

Samengevat kunnen de volgende aantallen netwerken en hosts gebruikt worden bij deze classes:

Classful addressing Aantal netwerken Aantal  hosts per netwerk Aantal bits en te gebruiken hosts
A 126* 16.777.214 24=224=16.777.216
B 16.384 65.535 16=65.536-2 =65.535
C 2.097,152 254 8=28=256-2 = 254
D (Multicast)

Veel adressen (address ranges) zijn gereserveerd waaronder het broadcast adres; 255.255.255.255 en adress blocks zoals Private IP addresses. Deze gereserveerde adressen of adres blokken kunnen niet worden gebruikt. Het aantal hosts is dus altijd 2n– 2 waar het alle bits nullen en enen worden afgetrokken. Deze zijn gereserveerd net als bij het loopback adres in het netwerken deel. Bovenstaande adressen zijn Public adressen.

De volgende tabel betreft Private IP adressen:

IP Address Class RFC 1918 Internal Address Range Aantal netwerken
Class A 10.0.0.0 to 10.255.255.255 1
Class B 172.16.0.0 to 172.31.255.255 16 t/m 31 is 16 extra
Class C 192.168.0.0 to 192.168.255.255 1

 

Zie voor extra informatie ook: https://en.wikipedia.org/wiki/Classful_network

The terms are out of date, relating to an era where hard class boundaries were defined for IP networks.  In modern classless networks, the concept makes no sense; you will only subnet or aggregate networks. In Ye Olde Days, there were only 3 classes of networks, Class A, B and C, giving you a choice of 2^24 address, 2^16 addresses, or 2^8 addresses. Once your site was allocated a class, you could further divide it by subnetting. As the Internet grew, this allocation scheme proved too coarse.  The term “supernetting” was coined to describe the act of combining multiple classful networks, violating the class boundaries.  Typically, a supernet would tie a few class C networks together for a site that was too large for a class C and too small for a class B.  Sometimes, class B networks were supernetted.  For example, years ago, Cisco Systems combined 171.68.0.0/16 and 171.69.0.0/16 to form 171.68.0.0/15, a “supenet” or two class B networks. All of this language is obsolete, though.  The modern Internet is classless, and one should only talk of prefixes and subnets.  The act of dividing a prefix allocation is called subnetting and the act of collecting multiple subnets into a shorter network mask for upstream routers is conventionally called aggregation.

Waar gaat het allemaal over tegenwoordig in de IT

De termen Software-defined Datacenter, Software-defined Infrastructure/Storage, Cloud, IoT, SMAC, converged-/ hyper-converged oplossingen, commodity hardware, fog-computing, containerized oplossingen, Application Centric Infrastructuren en gaat zo maar door aan hedendaagse ICT termen is om gek van te worden.

Ik hou van KIS (Keep It Simple: hoehetwelmoet.nl), techniek is al moeilijk genoeg maar minder moeilijk als de nieuwe uitvindingen van Marketing als het gaat om het verkopen van ICT. Om de 1 a 2 jaar wordt er een nieuwe term bedacht voor iets wat allang bestaat. Het verkopen van oude wijn in nieuwe zakken noemen we dit en het maakt het er niet altijd begrijpelijker op voor de gewone mens maar ook niet voor de specialisten onder ons die weer moeten vernemen dat er zogenaamd iets nieuws op de markt is. Door de nieuwe termen te simplificeren en te bespreken of waar mogelijk aan te geven dat het niet nieuw is maar een nieuwe term of Buzzzword (hoehetnietmoet.nl) wil ik graag proberen het overzicht te houden.  Mijn voorkeur gaat uit naar het behandelen van echt nieuwe technologische oplossingen maar neemt niet weg dat ik bovenstaande zaken ook graag begrijpelijk maak. Al is het alleen maar voor mijzelf 😉

Software defined Techneut?

Natuurlijk is er wel het een en ander veranderd in de ICT wereld door virtualisatie oplossingen, software-based infrastructure-,  tabs, smart phones en software zoals sociaal media en Google. Termen zoals Cloud, Big Data en Internet oF Things is een poging dit beter te kunnen verkopen of bespreekbaar te maken, maar als Vitualistie oplossingen, Sociaal media en Google gezien worden als software oplossingen, landen deze nog altijd op de hardware Stack (Server, netwerk/infra en Storage) en de mogelijkheden en onmogelijkheden van maximalen (Snelheid/Bandbreedte/IOPS). Dit zijn nog altijd technische zaken die door techneuten gemanaged moeten worden.

Nog even en het ICT beroep als techneut wordt ook gevirtualiseerd. We gaan het meemaken, of niet. ;-). Op dit moment wordt al veel softwarematig geregeld door Management oplossingen  (Update-, Configuration management- en Orchestration tools) waardoor steeds minder echte kennis nodig is van de gehele fysieke stack (server, netwerk, storage), waar dit vroeger gescheiden specialisaties waren waar echte mensen per discipline per deel van de stack gespecialiseerd waren. Pas als er echte problemen in de stack aanwezig is wordt het voor de generalisten waar er veel van aanwezig zijn moeilijk om de problemen op te lossen. De kennis is gewoon niet meer aanwezig. Maar laten we als techneuten vooral nuchter blijven en de zaken benoemen zoals ze zijn door de terminologie gebruikt door marketing weer te vertalen naar 1 of hardware (server, netwerk, storage) en daarboven is alles software die weer huist binnen deze 3 disciplines. Want ik ben zeker van mening dat het vitualiseren van de 3 disciplines een vooruitgang is, maar als je het fysiek niet snap dan snap je ook de gevirtualiseerde oplossing niet.

Dat voor wat betreft wat ik graag nog zou willen toevoegen middels deze blog maar nu weer verder met de techniek en de gecentraliseerde Storage oplossing, dit is namelijk het deel van de stack waar ik mij het meeste mee bezig heb gehouden tijden mijn 20 jarige ICT carrière. Natuurlijk snap ik de server en netwerk oplossing ook op een engineering niveau omdat zonder de gehele stack er nu eenmaal geen volledige oplossing is voor de software oplossingen. Ook dit zal dus aandacht krijgen.