IP : Services d'adressage IP

Dépannage des problèmes DHCP dans les réseaux câblés utilisant des debugs de Cisco Network Registrar

30 juillet 2013 - Traduction automatique
Autres versions: PDFpdf | Anglais (26 octobre 2005) | Commentaires


Contenu


Introduction

Le mandat de Data-over-Cable Service Interface Specifications (DOCSIS) que les Modems câble sont en pourparlers leurs adresses IP avec le DHCP. Le Cisco Network Registrar (le CNR) fournit le Système de noms de domaine (DNS) complet et la fonctionnalité administrative DHCP. Le CNR fournit également la fonctionnalité de serveur TFTP.

La négociation DHCP est un problème courant dans les environnements de réseau câblé qui transportent des données IP. Vous pouvez activer met au point sur le CNR pour dépanner la négociation DHCP. Ce document commence par une explication de la fonctionnalité CNR, puis explique comment activer met au point. En conclusion, il fournit des exemples classiques des situations où les Modems câble ne sont pas livré en ligne ou où la CPE (CPE) derrière les Modems câble ne peut pas se connecter à l'Internet.

Conditions préalables

Conditions requises

Ce document s'applique au CNR 5,0.

Composants utilisés

Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :

  • Systèmes Unix

    • Solaris

    • HP/UX

    • AIX

  • Windows NT

  • Windows 2000

Remarque: L'interface gui pour des systèmes Unix Est seulement disponible dans Solaris.

Les informations contenues dans ce document ont été créées à partir des périphériques d'un environnement de laboratoire spécifique. Tous les périphériques utilisés dans ce document ont démarré avec une configuration effacée (par défaut). Si votre réseau est opérationnel, assurez-vous que vous comprenez l'effet potentiel de toute commande.

Conventions

Pour plus d'informations sur les conventions de documents, reportez-vous à Conventions relatives aux conseils techniques Cisco.

Structure de répertoire au CNR

Systèmes Unix

La structure de répertoire pour des débuts UNIX à ce répertoire :

/opt/nwreg2

Le répertoire contient ces sous-répertoires :

skyshark# ls -l

total 18
drwxr-xr-x   2 root     bin         1024 Mar 28 18:34 bin/
drwxr-xr-x   2 root     bin          512 Mar 28 18:35 conf/
drwxr-xr-x   3 root     bin          512 Mar 28 18:33 docs/
drwxr-xr-x   3 root     bin          512 Mar 28 18:31 examples/
drwxr-xr-x   3 root     bin          512 Mar 28 18:31 extensions/
drwxr-xr-x   3 root     bin         1024 Mar 28 18:35 lib/
drwxr-xr-x   2 root     bin          512 Mar 28 18:33 misc/
drwxr-xr-x   2 root     bin          512 Apr  2 18:39 usrbin/
drwxr-xr-x   5 root     bin          512 Mar 28 18:31 WebUI/

Les sous-répertoires contiennent ces composants :

  • coffre — Programmes exécutables.

  • conf — Fichiers de configuration.

  • bibliothèque — Bibliothèques utilisées par des fichiers exécutables.

  • usrbin — Le sous-répertoire dans lequel vous lancez le GUI ou le nrcmd (ordre de Network Registrar, l'interface de ligne de commande CNR [CLI]).

Pour lancer le GUI, ntwkreg de question. Pour lancer le CLI, nrcmd de question.

Le répertoire de /opt/nwreg2/usrbin contient ces fichiers :

skyshark# pwd

/opt/nwreg2/usrbin

skyshark# ls -l

total 11422
-r-xr-xr-x   1 root     bin          980 Mar 28 18:35 aicstatus*
-r-xr-xr-x   1 root     bin          365 Mar 28 18:34 cnrFailoverConfig*
-r-xr-xr-x   1 root     bin          179 Mar 28 18:34 mcdadmin*
-r-xr-xr-x   1 root     bin          180 Mar 28 18:35 mcdshadow*
-r-xr-xr-x   1 root     bin          385 Mar 28 18:34 nrcmd*
-r-xr-xr-x   1 root     bin         1986 Mar 28 18:35 ntwkreg*

Les bases de données et les logs sont dans le répertoire de /var/nwreg2. Ces fichiers devraient avoir l'accès en écriture.

/var/nwreg2

skyshark# ls -l

total 6
drwxr-xr-x   9 root     other        512 Mar 28 18:36 data/
drwxrwxrwt   3 root     other        512 APR 16 09:07 logs/
drwxr-xr-x   2 root     other        512 Mar 28 18:42 temp/

Les sous-répertoires contiennent ces composants :

  • données — Emplacement des données et des fichiers de sauvegarde de base de données :

    • DB — La base de données active.

    • db.bak — Une copie de la base de données. Cette copie est tirée chaque nuit à 11:45 P.M. (temps de serveur).

    • dn — Le fichier de cache et la zone bien fondée en cours mettent en place qui est lue par le serveur et passée aux secondaries dans un transfert de zone.

  • se connecte — Ce répertoire contient les fichiers journal. Une erreur commune est de regarder dans le sous-répertoire de /opt/. Le moyen le plus simple de se souvenir est que les logs sont écrits par un serveur et doivent, en conséquence, être dans un répertoire avec l'accès en écriture. Les logs sont employés souvent pour dépanner, et sont ils ce qui vous utilisez les la plupart dans ce document.

  • temp — Fichiers temporaires verrouillés qui sont utilisés pour exécuter l'agent de serveur AIC.

Sur l'UNIX, il y a plusieurs processus liés à exécuter le CNR. Pour vérifier l'état, émettez cette commande :

skyshark# /opt/nwreg2/usrbin/aicstatus

Server Agent running     (pid: 112)
MCD lock manager running (pid: 118)
MCD server running       (pid: 116)
DNS server running       (pid: 119)
DHCP server running      (pid: 120)

Exécutez seulement un exemple de chaque agent de serveur.

Pour arrêter et commencer le processus, émettez ces commandes :

skyshark# /etc/init.d/aicservagt stop

skyshark# /etc/init.d/aicservagt start

# Starting AIC Server Agent for Network Registrar

Systèmes Windows

Pour Windows NT et le Windows 2000, la structure est semblable. Si vous installiez le CNR dans le C : drive, c'est le répertoire d'installation :

C:\Program Files\Network Registrar\

Ce répertoire contient ces fichiers et sous-répertoires :

C:\Program Files\Network Registrar> dir

 Volume in drive C is W2K
 Volume Serial Number is D439-C697

 Directory of C:\Program Files\Network Registrar

01/24/2001  03:22p      <DIR>          .
01/24/2001  03:22p      <DIR>          ..
01/24/2001  03:22p      <DIR>          BIN
04/14/2001  11:46p      <DIR>          DATA
01/24/2001  03:23p              15,037 DeIsL1.isu
01/24/2001  03:22p      <DIR>          DOCS
01/24/2001  03:22p      <DIR>          EXAMPLES
01/24/2001  03:21p      <DIR>          EXTENSIONS
01/24/2001  03:22p      <DIR>          lib
04/09/2001  08:38a      <DIR>          LOGS
01/24/2001  03:22p      <DIR>          MISC
12/25/2000  05:12p               2,083 README.TXT
01/24/2001  03:21p      <DIR>          TEMP
12/25/2000  10:12p              58,880 unregistrar.dll
01/24/2001  03:21p      <DIR>          WebUI
               3 File(s)         76,000 bytes
              12 Dir(s)   1,426,918,400 bytes free

La structure de répertoire dans le NT est différente que dans Unix. Le NT est plus flexible parce que tous les fichiers se trouvent dans un répertoire et les fichiers en lecture seule spécifiques sont signalés.

Sur Windows, il y a seulement un processus qui s'exécute : Agent de serveur 2,0 AIC. Dans le NT de fenêtre, choisissez le début > les configurations > le panneau de configuration > les services pour le contrôler.

Superviseur d'état du serveur

Vous pouvez surveiller l'état des serveurs de DN, DHCP, et TFTP au CNR avec le superviseur d'état du serveur. Ce moniteur affiche les aspects des santés du serveur spécifié.

Pour ajouter des serveurs au superviseur d'état du serveur, employez cette procédure pour glisser-déplacer des serveurs dans le moniteur d'état :

  1. Lancez le GUI CNR :

    1. Dans le système d'exploitation UNIX, lancez le Xterm et suivez cette procédure :

      1. Émettez le xhost + la commande.

      2. Telnet au système Unix Qui héberge le serveur CNR.

      3. Émettez les commandes suivantes :

        • xterm de TERME de setenv

        • AFFICHAGE your-local-ip-address:0.0 de setenv

      4. Émettez cette commande de lancer le GUI :

        • /opt/nwreg2/usrbin/ntwkreg et

          Remarque:  Et te permet pour utiliser cette fenêtre pour d'autres commandes.

    2. Dans le système d'exploitation Windows, choisissez le début > les programmes > le Network Registrar.

  2. Une fois que vous lancez le GUI, le système te demande le nom d'utilisateur et mot de passe. Quand le CNR est d'abord installé, il utilise l'admin de nom d'utilisateur et le changeme de mot de passe.

    attention Attention : Changez ce mot de passe.

  3. Cliquez sur + signe à côté de la batterie que vous voulez surveiller.

    Vous voyez maintenant un écran semblable à la figure 1.

    Figure 1 ? Fenêtre du gestionnaire de serveur pour le CNR 5.0.1

    /image/gif/paws/12192/cnr_debug_1.gif

  4. Cliquez avec le bouton droit le serveur que vous voulez surveiller et choisir ajoutez au moniteur d'état. Faites ceci pour chaque serveur que vous voulez surveiller.

    La fenêtre de superviseur d'état affiche un voyant vert à côté des serveurs qui s'exécutent. La figure 2 prouve que les serveurs de DN et DHCP pour la batterie 172.16.30.3 sont en activité, alors que le serveur TFTP pour la même batterie n'est pas (elle affiche un témoin lumineux rouge).

    Figure 2 ? Fenêtre de superviseur d'état pour le CNR 5.0.1

    /image/gif/paws/12192/cnr_debug_2.gif

    Remarque: Si vous voulez retirer un serveur de la fenêtre de superviseur d'état, cliquer avec le bouton droit le serveur et choisir retirez.

Le DHCP débugge des configurations

Vous pour avoir assez d'informations dans met au point des configurations pour dépanner un problème DHCP. Les informations sont enregistrées dans les fichiers journal. Vous pouvez utiliser le GUI et le CLI (nrcmd) à placer met au point au CNR.

Utilisant le GUI pour placer les debugs pour le DHCP

Pour utiliser le GUI pour placer met au point pour le DHCP, utilisent cette procédure :

  1. Du gestionnaire du serveur, sélectionnez le serveur pour lequel vous voulez placer l'option de débogage.

  2. Propriétés d'exposition de clic.

  3. Cliquez sur l'onglet Avancé sur la boîte de dialogue Properties.

  4. Configurations de debug de clic (indiquées par la flèche rouge sur le schéma 3).

    Figure 3 ? Le dialogue pour placer le debug nivelle pour le DHCP

    /image/gif/paws/12192/cnr_debug_3.gif

  5. Dans les configurations boîte de dialogue de debug, l'enable de contrôle mettent au point.

  6. Dans le domaine de catégorie, écrivez un de la configuration du tableau 1.

    Tableau 1 ? Configurations, niveaux, et description pour des configurations de debug DHCP

    Catégorie de serveur (DHCP) Niveau Description
    VX= 1 Traçage détaillé des paquets entrants et sortants.
    KP= 1-9 Tracé de paquets dynamique de DN et détails complets sur tous les messages à et de Protocole LDAP (Lightweight Directory Access Protocol), y compris des attributs de valeur.
    Q= 1-9 Suivi de Classe de service (Cos).
    Y= 1 La configuration de log de log-Basculement-petit groupe.
    Y= 2 Détail modéré sur le Basculement.
    Y= 3 Paquets formatés de Basculement. N'inclut pas des paquets de balayage. Ceci donne la même sortie que VX=1, mais seulement pour des paquets de Basculement.
    Y= 4 Paquets formatés de Basculement, balayages inclus.
    A-LZ-Z= 9 Tout le se connecter DHCP.

  7. Cliquez sur la case d'option MLOG, qui envoie la sortie au fichier journal approprié.

  8. Cliquez sur OK dans la boîte de dialogue de configurations de debug et puis dans la boîte de dialogue Properties.

Utilisant le CLI pour placer les debugs pour le DHCP

Vous pouvez également placer met au point des configurations avec le CLI (nrcmd).

C'est le format de la commande que vous émettez :

nrcmd> server server-type setDebug categories=level

  • type de serveur — Le serveur en question ; dans l'exemple pour cette section, c'est DHCP.

  • catégories — Correspondez à la colonne de la catégorie de serveur (DHCP) du tableau 1.

  • niveau — Une des valeurs numériques, de la colonne de niveau du tableau 1, qui correspond aux catégories.

Si vous ne spécifiez pas tous les arguments priés (variables), alors vous verrez ce message :

nrcmd> dhcp setDebug

310 Too few arguments - usage: server <server> setDebug <categories>=<level>..

Pour désactiver tous mettez au point les configurations, émettent la commande d'unsetDebug :

nrcmd> server dhcp unsetDebug

100 OK

Exemple 1

Pour placer les configurations de débogage pour le serveur DHCP au traçage détaillé des paquets entrants et sortants (VX=1), émettez cette commande :

nrcmd> server dhcp setDebug VX=1

100 OK

Remarque: Le message de 100 OKS indique que la commande est reçue. Si vous faites une erreur, vous voyez un message semblable à celui-ci :

nrcmd> server dhcp setDebug= vx=1

306 Unknown command - dhcp method 'setDebugs='

Dans cette erreur, un supplémentaire, incorrecte = signe a été entré après setDebug.

Exemple 2

Pour placer la configuration de débogage pour le serveur DHCP pour le DHCP le plus détaillé se connectant, émettez cette commande :

nrcmd> server dhcp setDebug A-LN-Z=9

100 OK

Parfois le CLI reçoit les nombres de plus haut niveau que ceux qui sont spécifiés dans le tableau 1, le tableau 2, ou le tableau 3. De tels plus élevés mettent au point des niveaux ne fournissent pas plus d'informations détaillées que ceux spécifiés dans ces tables.

Dans cet exemple, le niveau est placé à 100, et la commande est reçue ; mais les détails qui vont être envoyés aux logs sont identiques que ceux pour le niveau 9 :

nrcmd> dhcp setDebug A-LN-Z=100

100 OK

Configurations de debug de DN

Vous pouvez utiliser des DN mettez au point des configurations pour dépanner des problèmes de DN. Vous pouvez employer le GUI et le CLI pour placer les niveaux de débogage pour des DN.

Utilisant le GUI pour placer les debugs pour des DN

Pour utiliser le GUI pour placer met au point pour des DN, utilisent cette procédure :

  1. Du gestionnaire du serveur, sélectionnez le serveur pour lequel vous voulez placer l'option de débogage.

  2. Propriétés d'exposition de clic.

  3. Cliquez sur l'onglet Avancé sur la boîte de dialogue Properties.

  4. Configurations de debug de clic (indiquées par la flèche rouge sur le schéma 4).

    Figure 4 ? Le dialogue pour placer le debug nivelle pour le DHCP

    /image/gif/paws/12192/cnr_debug_4.gif

  5. Dans les configurations boîte de dialogue de debug, l'enable de contrôle mettent au point.

  6. Dans le domaine de catégorie, écrivez un de la configuration du tableau 2.

    Tableau 2 ? Configurations, niveaux, et description pour des configurations de debug DHCP

    Catégorie de serveur (DN) Niveau Description
    D   Découverte de base de DN
      1 Pannes, erreurs, singularités de configuration, quelques détails de configuration.
    2 Erreurs moins significatives. Erreurs de format dans les réponses, en avant, re-en avant.
    3 Pannes réparables, Serveur de noms illégal, mode esclave de configuration ou modifications d'état de commandant de client du transfert (XFER).
    4 Serveur du transfert par étapes (IXFR) contenu emballant chaque enregistrement, de zone IXFR ou de transfert (AXFR) et transferts de zone.
    5 fin de Par-nom du chargement de zone de fond.
    6 Programme et fin de règlage d'historique de zone. se connecter de client du Par-paquet XFER.
    U   Traçage de mise à jour dynamique
      1 Erreurs, pannes, réponses de non-succès.
    2 Par-paquet se connectant la source, la zone, le LD, le prereq, et les nombres d'enregistrements de ressource en mise à jour.
    3 se connecter de paquet entrant de Par-paquet, paquet ou erreurs de validation de demande.
    4 se connecter de base de paquet sortant de Par-paquet.
    5 Doublons d'arrivée sur la zone, nouvelles demandes d'arrivée sur la zone, réaction de client XFER d'informer des demandes sur la zone.
    P   Paquets
      1 paquet de Par-requête après validation de base de paquet.
    2 paquet Par-d'arrivée, se connecter de pré-validation.
    3 paquet Par-sortant, se connecter de données de réponse.
    DNUP   Tout le se connecter de DN
    A-Z 10 Tous les paquets d'arrivée et sortants, des demandes, des messages transférés, des mises à jour dynamique, informent des messages, des transferts incrémentaux et pleins de zone, et beaucoup de messages bavards, de fonction-particularité de décision d'arborescence de l'information pour tout le serveur DNS interne, base de données, et des sous-systèmes de bibliothèque.

  7. Cliquez sur la case d'option MLOG, qui envoie la sortie au fichier journal approprié.

  8. Cliquez sur OK dans la boîte de dialogue de configurations de debug et puis dans la boîte de dialogue Properties.

Utilisant le CLI pour placer les debugs pour des DN

Vous pouvez placer met au point des configurations avec le CLI (nrcmd).

C'est le format de la commande que vous émettez :

nrcmd> server server-type setDebug categories=level

  • type de serveur — Le serveur en question ; dans cet exemple pour la section, c'est des dn.

  • catégories — Correspondez à la colonne de catégorie de serveur (DN) du tableau 2.

  • niveau — Une des valeurs numériques, de la colonne de niveau du tableau 2, qui correspond aux catégories.

Pour désactiver tous mettez au point les configurations, émettent la commande d'unsetDebug. Il désactive toutes les configurations.

nrcmd> server dns unsetDebug

100 OK

Exemple

nrcmd> server dns setDebug D=5

100 OK

nrcmd> server dns setDebug AZ=10

100 OK

Configurations de debug TFTP

Quand vous avez des problèmes avec le serveur TFTP, employez le CLI pour placer les niveaux de débogage. Il n'est pas possible d'utiliser le GUI à cet effet. Le tableau 3 affiche que met au point les niveaux qui peuvent être placés au CNR pour le serveur TFTP.

Tableau 3 ? Configurations, niveaux, et description pour des configurations de debug de serveur TFTP

Catégorie de serveur (TFTP) Niveau Description
C 1-3 Configuration du serveur.
D 1-3 Statistiques.
E 1-3 Objet d'extension CSCR.
F 1-3 Manipulation de fichier.
P 1-3 Traitement des paquets.
S 1-3 Manipulation de session TFTP.
T 1-3 Manipulation de temporisateur.

Les niveaux ci-dessus correspondent à ces derniers mettent au point des types :

  • 1 — Conditions inattendues.

  • 2 — Plus d'informations détaillées.

  • 3 — Chaque possible met au point.

Exemple

Pour placer la configuration de débogage pour le serveur CNR TFTP pour la configuration du serveur la plus détaillée se connectant, émettez cette commande :

nrcmd> server tftp setDebug C=3

100 OK

Remarque: Si vous ne voyez pas le message de 100 OKS, alors le CNR n'a pas reçu la commande.

Pour désactiver tous mettez au point les configurations, émettent la commande d'unsetDebug :

nrcmd> server tftp unsetDebug

100 OK

Questions de configuration : Le client n'obtient pas une adresse IP

Un des la plupart des problèmes courants avec l'utilisation du serveur DHCP du CNR dans les environnements câblés est que les clients — des Modems câble et le CPE derrière eux — ne reçoivent pas une adresse IP. Si c'est le cas, les Modems câble sont bloqué dans l'init (d) état. Pour des détails sur cette situation, référez-vous aux Modems câble d'ubr de dépannage n'étant pas livré en ligne. Il y a plusieurs causes possibles de ce problème. Le reste de ce document discute chacune des raisons.

Le DHCP DÉCOUVRENT-ILS le paquet atteint-il le CNR ?

Le CNR se connecte, même au niveau par défaut, l'exposition assez d'informations pour déterminer si le CNR recevait le paquet. Vous pouvez vérifier si l'adresse MAC de l'identificateur client de client (CID) apparaît dans un paquet DHCPDISCOVER. L'octet extrême gauche du CID indique le htype=1 pour des Ethernets, ainsi la vraie adresse MAC est les six octets de droite. Avec le niveau se connectant par défaut, vous voyez ceci comme partie du name_dhcp_1_log (dans le registrar de C:\Program Files\Network \ ouvre une session Windows NT) :


!--- Output suppressed.

08/24/2000 17:40:09 name/dhcp/1 Activity Server 0 04619 Server received
                    a DHCPDISCOVER packet 'R1' from:
                    Host: 'dell-port-pc' CID: 01:00:10:a4:ff:61:8e
                    with IP source address: 0.0.0.0 via: Interface 10.200.68.200,
                    1 in use.

Cette sortie prouve que le paquet DHCPDISCOVER a été reçu.

C'est la même sortie avec se connecter plus détaillé ; VX=1 est le niveau de débogage qui est placé :

08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    -----  RECEIVED -- R1 -----
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ->  port = 68 received from  = 0.0.0.0
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ->  packet length = 300
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ->  op = 1 request
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ->  htype = 1 ethernet 	hlen = 6
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ->  hops =   0
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    -> 	xid = 0xec9e secs = 0 flags = 0x0
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    -> 	ciaddr = 0.0.0.0
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    -> 	yiaddr = 0.0.0.0
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    -> 	siaddr = 0.0.0.0
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    -> 	giaddr = 0.0.0.0
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    -> 	chaddr = 0:10:a4:ff:61:8e
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ->     dhcp-message-type = 1 discover
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    -> 	   dhcp-client-identifier =1 0 16 164 255 97 142
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ->     ethernet? = 0:10:a4:ff:61:8e
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ->     dhcp-requested-address = 10.200.68.100
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ->     host-name = "dell-port-PC"
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ->     end
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ->  sname = ""
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ->  file  = ""
08/24/2000 17:45:19 name/dhcp/1 Info Protocol 0 04935 R1:
                    ----- END OF RECEIVED -- R1 -----

Comme vous pouvez voir dans cette sortie, vous obtenez les mêmes informations sur le DHCPDISCOVER ; mais, avec le niveau de débogage réglé à VX=1, plus d'informations détaillées au sujet du paquet elle-même sont fournies.

Le CNR a-t-il une place appropriée pour le client ?

Le DHCP ne comprend pas le concept de masque de sous-réseau de l'IP. Quand le CNR reçoit un DHCPDISCOVER, il regarde le champ GIADDR ou le gisement de sauts : s'ils sont vides ou égaux à 0, alors le CNR suppose que la demande provient le réseau local. Il regarde l'adresse IP de l'interface sur laquelle elle a reçu le paquet, et elle emploie celui-là pour sélectionner une portée. Si le champ GIADDR n'est pas vide, alors le DHCPDISCOVER a été expédié par un agent de relais DHCP. L'agent de relais DHCP est habituellement configuré sur des Routeurs de Cisco avec la commande de helper-address d'IP. Dans ce cas, le CNR emploie l'adresse IP dans le champ GIADDR pour sélectionner une portée. Cette adresse IP était de l'interface de routeur qui a reçu la demande de diffusion du client. Dans des les deux cas, parce qu'il n'y a aucune informations de masque de sous-réseau dans la demande, le CNR fait une meilleure correspondance dans toutes les portées configurées pour sélectionner bon.

Supposez au CNR que vous configurez 10.0.0.0/8 : ce sera bon pour une demande provenant 10.200.68.200. S'il y a plus spécifique, comme 10.200.0.0/16 ou 10.200.68.0/24, alors celui avec le plus long masque est choisi. Il vaut mieux de créer des portées avec le même masque de sous-réseau du réseau où ils sont assignés. C'est parce que le masque de sous-réseau de portée est le masque de sous-réseau qui est assigné aux clients et, sur un segment de réseau, tous les hôtes devraient partager le même masque de sous-réseau. Il est possible d'assigner aux clients un masque de sous-réseau qui est différent de celui qui est défini dans la portée avec l'obtenir-sous-réseau-masque-de-stratégie d'option DHCP. Dans cet exemple, le CNR n'a pas une portée, ainsi elle jette la demande :

08/24/2000 17:45:19 name/dhcp/1 Warning Protocol 0 04663
                    Received DHCPDISCOVER packet but found no Scopes
                    for source network = '10.200.68.200'. Dropping packet.

La prochaine sortie témoin affiche un paquet qui est expédié par un agent de relais. Notez les sauts et les valeurs de champ GIADDR, et comparez-les aux valeurs dans la sortie précédente témoin. Le résultat est identique parce que le CNR n'a pas une portée cette des correspondants 10.200.71.1.

08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ----- RECEIVED -- R61 -----
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->  port = 67    received from = 10.200.71.1
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->  packet length = 296
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->  op =  1 request
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->  htype = 1  ethernet    hlen = 6
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->  hops = 1
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->  xid = 0x2127  secs = 0  flags = 0x8000  broadcast
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->  ciaddr = 0.0.0.0
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->  yiaddr = 0.0.0.0
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->  siaddr = 0.0.0.0
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->  giaddr = 10.200.71.1
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->  chaddr = 0:1:96:59:47:c1
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->    dhcp-message-type = 1 discover
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->    dhcp-max-message-size = 1152
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->    dhcp-client-identifier = 1 0 1 150 89 71 193
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->    ethernet? = 0:1:96:59:47:c1
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->    dhcp-parameter-request-list = 20
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->        1    subnet-mask
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->        2    time-offset
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->        4    time-servers
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->        66   tftp-server
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->        128  mcns-sec-server
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->        3    routers
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->        7    log-servers
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->        67   boot-file
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->    dhcp-class-identifier = "docsis1.0"
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->    dhcp-option-overload = 3
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->    relay-agent-info = 1 4 128 6 0 9 2 6 0 1 150 89 71 193
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                    ->
08/24/2000 18:11:23 name/dhcp/1 Info Protocol 0 04935 R61:
                     ----- END OF RECEIVED -- R61 -----
08/24/2000 18:11:23 name/dhcp/1 Warning Protocol 0 04663
                    Received DHCPDISCOVER packet but found no Scopes
                    for source network = '10.200.71.1'. Dropping packet.

Y a-t-il des adresses libres dans la portée ?

Il est possible que les portées soient configurées de telle manière que le groupe d'adresses soit trop petit. En pareil cas, vous pouvez généralement manquer d'adresses dans le groupe. Cette sortie témoin affiche les messages de débogage quand un client tente d'obtenir une adresse IP mais la portée utilise déjà toutes ses adresses dans le groupe :

08/24/2000 19:14:26 name/dhcp/1 Warning Server 0 04440
                    No more leases are AVAILABLE, unable to respond
                    to DHCP DISCOVER Request: R9 = from Client: Host:
                    dell-port-PC CID: 01:00:10:a4:ff:61:8e in Network:
                    10.200.68.0-255.255.255.0 via: Interface 10.200.68.200

L'offre atteint-elle le client ?

  • Une fois que le CNR sélectionne une portée et crée un paquet d'offre, les informations doivent être communiquées au client.

    Remarque: Quand le paquet est destiné à un agent de relais, assurez-vous que l'ordinateur CNR a une artère au GIADDR.

  • Dans le cas de ces exemples, assurez-vous que vous pouvez cingler de l'ordinateur CNR 10.200.71.1.

  • Souvenez-vous que, après qu'un bail soit offert, il y a quelques autres étapes avant qui devient une vraie adresse IP sur le réseau.

  • Vous devez voir, du même client, d'un ou plusieurs DHCPREQUEST et d'un ou plusieurs DHCPOFFER du serveur au client. Ceux-ci sont utilisés pour demander et obtenir des options DHCP.

  • Vous devez voir une finale DHCPACK du serveur au client, qui termine le processus DHCP.

  • Si vous voyez seulement DHCPOFFER mais rien d'autre, assurez-vous que les paquets atteignent le client et que le DHCPREQUEST ultérieur revient au serveur.

C'est une entrée de journal qui prouve qu'un bail a été accordé (ces informations fournissent l'adresse MAC du client, l'adresse IP qui est assignée, et la date d'expiration de bail) :

08/24/2000 13:13:15 name/dhcp/1 Activity Protocol 0 04994 10.200.68.200
                    Lease granted to Host: dell-port-PC CID: 01:00:10:a4:ff:61:8e
                    packet 'R207' until Thu, 31 Aug 2000 13:13:15  +0200. 320 ms.

Y a-t-il un autre serveur sur le même réseau avec la même portée configurée ?

En pareil cas, les deux serveurs reçoivent un DHCPDISCOVER et font leur proposition, mais le client choisit seulement un. Il indique, dans le DHCP-serveur-identifiant, lequel du serveur il reçoit une offre. Si l'autre serveur voit le DHCPREQUEST pour la même adresse IP qu'il lui a offerte — mais le DHCP-serveur-identifiant indique un autre serveur — alors désactive le bail, pour empêcher les adresses en double possibles.

La dernière ligne dans cette sortie témoin affiche cette mise hors fonction :

09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ----- RECEIVED -- R7 -----
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   port = 68 received from = 0.0.0.0
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   packet length = 300
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   op = 1 request
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   htype = 1 ethernet hlen =3D 6
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   hops =  0
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   xid =0xddaadeaa   secs = 0 flags = 0x0
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   ciaddr = 0.0.0.0
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   yiaddr = 0.0.0.0
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   siaddr = 0.0.0.0
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   giaddr = 0.0.0.0
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   chaddr = 0:10:a4:ff:61:8e
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->     dhcp-message-type = 3 request
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->     dhcp-client-identifier = 1 0 16 164 255 97 142
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->     ethernet? = 0:10:a4:ff:61:8e
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->     dhcp-requested-address = 10.200.68.201
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->     dhcp-server-identifier = 10.200.68.17
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->     hostname = "dell-port-PC"
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->     dhcp-parameter-request-list = 20
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->         1   subnet-mask
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->         3   routers
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->         15  domain-name
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->         6   domain-name-servers
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->         44  netbios-name-servers
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->         46  netbios-node-type
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->         47  netbios-scope
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   vendor-encapsulated-options = 55 2 0 0
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   end
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   sname = ""
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ->   file = ""
09/01/2000 12:21:05 name/dhcp/1 Info Protocol 0 04935 R7:
                    ----- END OF RECEIVED -- R7 -----
09/01/2000 12:21:05 name/dhcp/1 Activity Protocol 0 04993 10.200.68.201
                    Lease offered to Host: dell-port-PC CID: 01:00:10:a4:ff:61:8e
                    packet 'R5' until Fri, 01 Sep 2000 12:23:05 +0200. 150 ms.
09/01/2000 12:21:05 name/dhcp/1 Error Protocol 0  04684 Client:
                    'Host: dell-port-PC CID: 01:00:10:a4:ff:61:8e ' sent a 
                    REQUEST for Lease: '10.200.68.201' to Server: '10.200.68.17'
                    instead of us. Marking Lease UNAVAILABLE

Si le serveur voit un DHCPREQUEST pour une adresse IP différente, elle se connecte simplement la. Dans cette sortie témoin, l'autre serveur (10.200.68.17) a offert 10.200.68.201 :

09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ----- RECEIVED -- R3 -----
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->  port = 68    received from = 0.0.0.0
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->  packet length = 300
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->  op = 1 request
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->  htype = 1  ethernet    hlen = 6
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->  hops = 0
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->  xid = 0x8a7d8b7d  secs = 0  flags = 0x0
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->  ciaddr = 0.0.0.0
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->  yiaddr = 0.0.0.0
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->  siaddr = 0.0.0.0
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->  giaddr = 0.0.0.0
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->  chaddr = 0:10:a4:ff:61:8e
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->     dhcp-message-type =  3 request
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->     dhcp-client-identifier = 1 0 16 164 255 97 142
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->     ethernet? = 0:10:a4:ff:61:8e
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->     dhcp-requested-address = 10.200.68.201
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->     dhcp-server-identifier = 10.200.68.17
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->     hostname = "dell-port-PC"
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->     dhcp-parameter-request-list = 20
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->         1    subnet-mask
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->         3    routers
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->         15   domain-name
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->         6    domain-name-servers
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->         44   netbios-name-servers
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->         46   netbios-node-type
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->         47   netbios-scope
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->    vendor-encapsulated-options = 55 2 0 0
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->    end
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->    sname = ""
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ->    file = ""
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 04935 R3:
                    ----- END OF RECEIVED -- R3 -----
09/01/2000 12:19:33 name/dhcp/1 Info Protocol 0 05005 10.200.68.202
                    Offer to Host: dell-port-PC CID: 1:00:10:a4:ff:61:8e packet
                    'R3' was rejected in favor of an offer from another server.

Y a-t-il un autre hôte sur le même réseau déjà configuré avec l'adresse IP qui va être offerte au client ?

Avant qu'il offre un bail, le CNR peut exécuter un ping à l'adresse IP qu'elle est sur le point d'offrir. S'il reçoit une réponse positive, alors il désactive ce bail et choisit une nouvelle adresse IP d'offrir, pour éviter des adresses en double sur le réseau. Par défaut, ce comportement est désactivé, mais vous pouvez l'activer sur une base de par-portée du GUI.

Choisissez la portée > le Properties et cliquez sur l'onglet Avancé ; vérifiez alors l'adresse de ping avant de lui offrir la case à cocher :

Figure 5 ? Zone de dialogue de portée

cnr_debug_5.gif

Réciproquement, vous pouvez émettre cette commande du CLI :

nrcmd>  scope name enable ping-clients

Exemple

Si, sur la portée UBR7246_C4_0, vous voulez cingler une adresse avant qu'elle soit offerte, alors émettre cette commande :

nrcmd> scope UBR7246_C4_0 enable ping-clients

100 OK
ping-clients=enabled

Cette sortie témoin affiche que met au point dans cette situation :

09/01/2000 12:52:26 name/dhcp/1 Warning Protocol 0 0467
                    Unexpected ping reply received for AVAILABLE lease
                    '10.200.68.201' - it is being marked  UNAVAILABLE

Conversations connexes de la communauté de soutien de Cisco

Le site Cisco Support Community est un forum où vous pouvez poser des questions, répondre à des questions, faire part de suggestions et collaborer avec vos pairs.


Informations connexes


Document ID: 12192