GNU/Linux >> Tutoriels Linux >  >> Linux

Comment utiliser l'outil de ligne de commande sipcalc Linux

Les seuls numéros de réseau que je peux garder dans ma tête sont maintenant et ont toujours été un réseau de classe C avec un masque de réseau 24 bits, tel que 192.168.1.0/24. Je sais qu'il y a 254 adresses hôtes utilisables disponibles avec une adresse de diffusion de 192.168.1.255, une adresse de passerelle/routeur de 192.168.1.1 ou 192.168.1.254 (selon qui exécute le réseau) et un masque de réseau lisible par l'homme de 255.255.255.0 . C'est mon réseau standard. Après tout, 254 hôtes suffisent pour n'importe quel sous-réseau, n'est-ce pas ? Mauvais. Il y a quelques années, j'ai dû sortir de mon scénario standard de 254 hôtes par sous-réseau lorsque j'ai décidé d'utiliser un masque de réseau 22 bits (255.255.252.0) pour obtenir un espace d'adressage utilisable de 1022.

Je connaissais peu cet espace d'adressage et il était frustrant d'essayer de rechercher les informations simples dont j'avais besoin sans faire défiler les forums avec tous les bavardages inutiles et la rhétorique hors sujet. Je suppose que certaines personnes ont juste besoin d'un espace dans lequel exprimer leurs griefs à propos de tout. Je m'égare.

Le problème

Étant donné que tout a une adresse IP de nos jours, mon serveur DHCP manquait d'adresses IP et je devais faire quelque chose de simple pour remédier à la situation. J'avais l'idée ridicule que 254 adresses seraient suffisantes pour environ 130 employés, 30 serveurs, 10 imprimantes, deux routeurs, 10 points d'accès sans fil et quelques autres appareils aléatoires dans chacun de nos deux sites. J'avais oublié que tout le monde a un téléphone qu'il a connecté au WiFi. Vous pouvez voir que mon adresse 254 ne couvrirait pas les PC de tout le monde ainsi que leurs téléphones et ne prendrait pas en charge mes autres appareils requis. J'ai reçu beaucoup trop d'appels et de tickets décrivant des problèmes qui n'étaient pas si faciles à résoudre jusqu'à ce que je réalise que j'étais à court d'adresses IP. Et, malheureusement, les serveurs DHCP distribuent les adresses selon le principe du premier arrivé, premier servi, sans se soucier de qui (ou de quoi) obtient ces adresses.

J'ai découvert le sipcalc commande pour me faciliter un peu la vie lors de la détermination des plages d'adresses IP, des masques de réseau et des adresses de passerelle potentielles. Le sipcalc La commande est une sorte de calculateur de ligne de commande qui affiche toutes les informations relatives à l'IP dont vous avez besoin pour remplir vos informations DHCP ou configurer vos adresses IP statiques.

utilisation de sipcalc

Voici un exemple de réseau standard 24 bits de classe C utilisant sipcalc .

$ sipcalc 192.168.1.0/24
-[ipv4 : 192.168.1.0/24] - 0

[CIDR]
Host address		- 192.168.1.0
Host address (decimal)	- 3232235776
Host address (hex)	- C0A80100
Network address		- 192.168.1.0
Network mask		- 255.255.255.0
Network mask (bits)	- 24
Network mask (hex)	- FFFFFF00
Broadcast address	- 192.168.1.255
Cisco wildcard		- 0.0.0.255
Addresses in network	- 256
Network range		- 192.168.1.0 - 192.168.1.255
Usable range		- 192.168.1.1 - 192.168.1.254

Et, l'exemple de masque de réseau 22 bits équivalent.

$ sipcalc 192.168.1.0/22
-[ipv4 : 192.168.1.0/22] - 0

[CIDR]
Host address		- 192.168.1.0
Host address (decimal)	- 3232235776
Host address (hex)	- C0A80100
Network address		- 192.168.0.0
Network mask		- 255.255.252.0
Network mask (bits)	- 22
Network mask (hex)	- FFFFFC00
Broadcast address	- 192.168.3.255
Cisco wildcard		- 0.0.3.255
Addresses in network	- 1024
Network range		- 192.168.0.0 - 192.168.3.255
Usable range		- 192.168.0.1 - 192.168.3.254

Si vous faites partie de ceux qui aiment voir beaucoup d'informations, quelle que soit leur valeur, essayez d'ajouter le -a (tous) passent à votre commande.

$ sipcalc -a 192.168.1.0/24
-[ipv4 : 192.168.1.0/24] - 0

[Classful]
Host address		- 192.168.1.0
Host address (decimal)	- 3232235776
Host address (hex)	- C0A80100
Network address		- 192.168.1.0
Network class		- C
Network mask		- 255.255.255.0
Network mask (hex)	- FFFFFF00
Broadcast address	- 192.168.1.255

[CIDR]
Host address		- 192.168.1.0
Host address (decimal)	- 3232235776
Host address (hex)	- C0A80100
Network address		- 192.168.1.0
Network mask		- 255.255.255.0
Network mask (bits)	- 24
Network mask (hex)	- FFFFFF00
Broadcast address	- 192.168.1.255
Cisco wildcard		- 0.0.0.255
Addresses in network	- 256
Network range		- 192.168.1.0 - 192.168.1.255
Usable range		- 192.168.1.1 - 192.168.1.254

[Classful bitmaps]
Network address		- 11000000.10101000.00000001.00000000
Network mask		- 11111111.11111111.11111111.00000000

[CIDR bitmaps]
Host address		- 11000000.10101000.00000001.00000000
Network address		- 11000000.10101000.00000001.00000000
Network mask		- 11111111.11111111.11111111.00000000
Broadcast address	- 11000000.10101000.00000001.11111111
Cisco wildcard		- 00000000.00000000.00000000.11111111
Network range		- 11000000.10101000.00000001.00000000 -
			  11000000.10101000.00000001.11111111
Usable range		- 11000000.10101000.00000001.00000001 -
			  11000000.10101000.00000001.11111110

[Networks]
Network			- 192.168.1.0     - 192.168.1.255 (current)

Personnellement, je pense que les informations CIDR (Classless Inter-Domain Routing) sont les plus utiles. C'est la sortie par défaut pour le sipcalc commande. Je ne sais pas qui utilise les informations bitmap, mais elles sont là pour ceux d'entre vous qui le font. Je n'ai jamais eu d'exemple dans ma carrière pour le connaître ou l'utiliser. Peut-être que sa connaissance est utile pour les examens de certification réseau, mais au-delà de cela, je ne suis pas sûr que vous le verrez jamais dans un réseau ou une application réelle. Si c'est le cas, utilisez sipcalc pour vous faciliter la tâche.

[ Vous pourriez également apprécier :Exécuter une analyse NMAP rapide pour inventorier mon réseau ]

options sipcalc

Si vous avez lu l'un de mes articles, vous savez que j'utilise un sous-ensemble d'options de commande - juste celles dont j'ai besoin, en fait. J'ai rarement le temps ou la patience d'explorer toutes les options d'une commande. J'accède généralement à la page de manuel, trouve une ou deux options qui me donnent les informations dont j'ai besoin, puis je passe à autre chose. Pour ceux d'entre vous qui aiment explorer tous les coins et recoins, profitez de tout sipcalc les coins et recoins (liste d'options) de la page de manuel :

OPTIONS
       -a --all
              Give  all  possible  information about an adress or
              interface, this is equivalent to giving  the  flags
              -b -c -i -n 0 for IPv4 and -e -r -t for IPv6.


       -b --cidr-bitmap (IPv4)
              Display CIDR based bitmaps.


       -c --classfull-addr (IPv4)
              Display classfull address information.


       -d --resolve
              Enable name resolution.


       -e --v4inv6 (IPv6)
              Display v4inv6 address information.


       -h --help
              Display the commandline help.


       -i --cidr-addr (default IPv4)
              Display CIDR address information.


       -I, --addr-int=INT
              Explicitly  add  an interface.  This can be used to
              circumvent   the   sipcalc   "smart   parsing"   of
              addresses/interfaces  on  the commandline. This can
              be useful if you for example for some  reason  have
              an  interface  with  the  same  name  as  an actual
              address, eg. 127.0.0.1 or ::1 etc.   See  also:  -4
              -6.


       -n --subnets=NUM
              Display  NUM  extra subnets (starting from the cur-
              rent subnet). Will display all subnets in the  cur-
              rent /24 if NUM is 0.


       -r --v6rev (IPv6)
              Display IPv6 reverse DNS information.


       -s --v4split=MASK (IPv4)
              Split  the  current  network  into  subnets of MASK
              size. MASK can be given in dotted quad, hex or CIDR
              form.


       -S, --v6split=MASK (IPv6)
              Split  the  current  network  into  subnets of MASK
              size. MASK must be given in CIDR form, either  with
              or with the '/' character.


       -t, --v6-standard (default IPv6)
              Display IPv6 address information.


       -u, --split-verbose
              This  will put network splitting into verbose mode.
              This means that  all  the  subnets  generated  when
              splitting  a network will be passed back to sipcalc
              for explicit parsing giving the same output  as  if
              the address had been given on the commandline.  All
              options passed to sipcalc on the  commandline  will
              also be inherited when the subnet is passed back to
              sipcalc for parsing, with one exception, the  -s/-S
              flag,  we don't want an endless loop.  Sending only
              the -s/-S and -u flags to  sipcalc  will  give  the
              default output (-i for ipv4 and -t for ipv6).


       -v --version
              Display version information.


       -x --classful-bitmap (IPv6)
              Display a classfull bitmap.


       -4, --addr-ipv4=ADDR
              Explicitly add an IPv4 address.  See also: -I -6.


       -6, --addr-ipv6=ADDR
              Explicitly add an IPv6 address.  See also: -I -4.

Pour moi, les informations IPv6 ne valent presque rien car si jamais je convertis un de mes réseaux dessus, DHCP sera mon meilleur ami. Je préfère ne pas regarder ou tenter de taper des adresses 128 bits. En attendant, sipcalc et je poursuivrai notre relation minimaliste orientée IPv4.

[ Vous souhaitez en savoir plus sur l'automatisation du système ? Démarrez avec The Automated Enterprise, un livre gratuit de Red Hat. ]

Récapitulez

Le sipcalc La commande est l'une de ces commandes que vous conservez dans votre arsenal personnel d'administrateur système lorsque vous en avez besoin. Et vous n'en avez pas besoin très souvent, sauf si vous vous occupez quotidiennement de la création, de la gestion et de l'attribution d'espaces d'adressage IP. Certains administrateurs système pipent sipcalc dans un fichier texte et imprimez-le pour référence future. Je trouve qu'envoyer les informations sur une page HTML est beaucoup plus pratique que de garder une trace de bouts de papier pour le reste de mes jours ou de les épingler sur le mur de mon box déjà surpeuplé.


Linux
  1. Comment utiliser la commande Linux sed

  2. Comment utiliser la commande Linux grep

  3. Comment utiliser la commande history sous Linux

  4. Comment installer et utiliser l'outil de ligne de commande Mosh Linux

  5. Comment utiliser la commande id sous Linux

Comment utiliser le proxy sur la ligne de commande Linux ?

Comment utiliser la commande fd sur le système Linux

Comment utiliser la commande wget sous Linux ?

Comment utiliser la commande xargs sous Linux ?

Comment utiliser la commande RPM sous Linux

Comment utiliser la commande which sous Linux