Attribuer une adresse IP en fonction du port du commutateur

9

En bref:
je veux que le serveur DHCP attribue une adresse IP préconfigurée basée sur un port (sur un commutateur, idéalement) auquel un appareil est connecté.

Longue:

Ma situation:
je construis une ferme intérieure automatisée (pour la culture des tomates). La ferme est composée de plusieurs (12 pour l'instant, mais deviendront des centaines) des chambres identiques de 7 "x7". Chaque pièce aura un port Ethernet, et sur ce port un système de contrôle de l'environnement sera branché. Notez que chaque pièce doit être contrôlée individuellement.

Les chambres sont disposées en rangées de 12, donc je pensais avoir un commutateur par ligne et connecter ces commutateurs à un routeur.

Je pourrais programmer chaque contrôleur environnemental avec une IP statique, afin de pouvoir associer un contrôleur à une pièce particulière du serveur, mais je pense qu'il serait plus facile d'attribuer une adresse IP à chaque pièce, ce qui rendrait également les contrôleurs interchangeables et remplaçable à chaud sans besoin de configuration manuelle.

InB4: J'envisage également d'utiliser le réseau ZigBee pour cette application, mais je devrai peut-être transmettre des images de diagnostic, et avec des centaines d'unités ZigBee peut être inadéquat.

Question: est-il possible d'attribuer une adresse IP préconfigurée en fonction d'un port auquel un appareil est connecté? De quels appareils ai-je besoin pour cela?

THX-1138
la source
1
Vous pouvez faire quelque chose comme un VLAN par port et attribuer un / 30 ou / 31 à chaque VLAN, mais êtes-vous sûr de devoir utiliser des IP pour identifier les périphériques? L'application que vous utilisez pour lire nomme-t-elle les appareils d'une manière ou d'une autre? Mon instinct est qu'il doit y avoir une meilleure façon d'accomplir cela.
Ron Trunk
Je ne m'intéresse qu'à l'emplacement physique de l'unité, chaque contrôleur individuel n'a pas d'identité significative. Si le contrôleur, par exemple, tombe en panne - je veux pouvoir le remplacer par un tout nouveau, sans avoir à entrer dans les paramètres des périphériques et à configurer l'adresse IP statique ou l'emplacement.
THX-1138

Réponses:

12

est-il possible d'attribuer une adresse IP préconfigurée en fonction d'un port auquel un appareil est connecté? De quels appareils ai-je besoin pour cela?

Vous pouvez utiliser un commutateur Cisco et un IOS qui prennent en charge l' allocation d'adresses basée sur le port du serveur DHCP sur votre commutateur; vous devez également émettre DHCP à partir de votre commutateur. Supposons que vous avez obtenu Fa0/1et Fa0/2dans Vlan120.

ip dhcp use subscriber-id client-id
ip dhcp subscriber-id interface-name
ip dhcp excluded-address 192.0.2.1 192.0.2.10
!
ip dhcp pool VLAN120
   network 192.0.2.0 255.255.255.0
   default-router 192.0.2.1
   dns-server 192.0.2.5
   reserved-only
   address 192.0.2.101 client-id "Fa0/1" ascii
   address 192.0.2.102 client-id "Fa0/2" ascii

Cette configuration réserve des adresses pour fa0 / 1 et fa0 / 2. La même adresse sera toujours attribuée à ces ports.

Mike Pennington
la source
1
Il y a aussi l'option-82 pour un serveur DHCP externe, mais c'est beaucoup plus de travail et plus une question de "serveur".
Ricky Beam
2

J'ai pu faire ce que vous vouliez en utilisant Cisco IOS DHCP et l'option 82 snooping. Je n'utilise peut-être pas les bons termes. Mais, fondamentalement, j'avais besoin d'attribuer des adresses IP aux imprimantes de cuisine en fonction de la station dans la cuisine où elles se trouvaient. Si l'une de ces imprimantes mourait pendant un quart de dîner, le responsable du magasin devrait pouvoir mettre une nouvelle imprimante configurée avec DHCP et la configurer avec la même adresse que l'imprimante retirée. J'avais également besoin que les 8 imprimantes soient dans le même domaine de diffusion et je ne pouvais pas utiliser l'aide pour envoyer à un serveur Windows 2012 car le magasin devait continuer à fonctionner même si mon WAN tombait en panne.

Je l'ai fait avec la commande suivante sur chaque port de commutateur: ip dhcp snooping vlan 3 information option format-type circuit-id override string broil(ou tout ce qui vous concerne)

Utilisez un convertisseur ASCII en hexadécimal et convertissez votre chaîne en hexadécimal

Ensuite, sur le serveur DHCP, que ce soit un commutateur ou un routeur, configurez une classe DHCP. Pour mon gril au-dessus c'est ça

ip dhcp class broil
   relay agent information
      relay-information hex 010562726f696c*

c'est 010 <number of characters in your string so 5 since broil is 5 characters><whatever your string converts to>

Voici comment ma piscine est configurée.

ip dhcp pool Kitchen
 network 10.102.1.0 255.255.255.0   
 default-router 10.102.1.1
 lease infinite
 class broil
 address range 10.102.1.160 10.102.1.160

Et enfin, afin de mettre cette adresse à la disposition d'un autre appareil en cas de défaillance de celui de ce port de commutateur, j'ai configuré un travail kron à émettre clear ip dhcp bind *toutes les 5 minutes.

Je crois que pour que tout cela fonctionne, j'avais besoin des commandes supplémentaires suivantes sur mon commutateur ios qui est mon serveur DHCP

ip dhcp relay information trust-all ip dhcp subscriber-id
interface-name

ip dhcp snooping vlan 3 (our vlan of course) ip dhcp snooping
information option allow-untrusted ip dhcp snooping

et sur n'importe quel port reliant votre commutateur de serveur DHCP à tout autre commutateur pouvant être utilisé pour cela (ainsi que les commutateurs de liaison montante à votre commutateur de serveur DHCP)

ip dhcp snooping trust

C'est fondamentalement ça. Fonctionne comme un charme et ENFIN nous a permis de passer de l'IP à l'impression en série qui était une épave de train.

mkitg
la source
-1

Si vous voulez "remplaçable à chaud", les noms des périphériques devront être indépendants de leur emplacement. Vous devrez suivre les adresses MAC des appareils sur un graphique avec un nom de Minion correspondant simple comme «Bob». Configurez ensuite l'appareil avec ce nom ou cette description «Bob». De cette façon, lorsque les rapports de surveillance du réseau émettent uniquement la description ou le nom est important pour vérifier le graphique. Il vous suffit de garder une trace sur le graphique où vous placez les appareils.

Les commutateurs sont plus concernés par les adresses physiques que les adresses IP. Cependant, chaque étage pourrait utiliser son propre vlan avec son propre serveur DHCP. Ensuite, vous pouvez créer un vlan nommé pour chaque étage comme "grow_rooms_1-12" avec le masque de sous-réseau / 28. Vous pouvez également donner à chaque port une description telle que «agrandir la salle 1». Ce sont d'excellents outils de gestion si vous regardez votre réseau via la ligne de commande.

Vous pouvez également modifier la taille des pièces pour améliorer l'efficacité de l'éclairage, de l'humidité et de la température, ce qui pourrait également réduire les appareils de surveillance.

Jon Rob
la source