[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference azur::mcc

Title:DECmcc user notes file. Does not replace IPMT.
Notice:Use IPMT for problems. Newsletter location in note 6187
Moderator:TAEC::BEROUD
Created:Mon Aug 21 1989
Last Modified:Wed Jun 04 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:6497
Total number of notes:27359

2861.0. "Detection of duplicate and unknown nodes, how?" by ZPOVC::RAMARAJ () Mon Apr 27 1992 14:58

There are alot of customers who would like to be alarmed when an unregistered
DECnet or IP node comes up on a network, or when duplicate addresses are
used.

1. Is there a way to alarm on discovery of unregistered nodes.


2. Also is there way of alarming on duplicate address usages?

These are some features that network managers would like to see incorporated
into DECmcc, without much DCL programming on their part.

Will these features be available later or is there a way to do it now.

Raj
OAC Singapore
T.RTitleUserPersonal
Name
DateLines
2861.1Yet another customer with the same request...DAGWST::SITZFri Jun 05 1992 15:418
I had a customer ask me the questions posed in .0 today (duplicate address
detection and new node detection / notification)

What kind of answer can I give this (and other) customers?

Regards,

Glen R.
2861.2Here is a way for DecnetSUBWAY::REILLYMike Reilly - New York Bank DistrictFri Jun 05 1992 21:2512
    What protocol would these duplicate nodes be running? 
    
    To detect duplicate DECnet nodes on a LAN, a component of NCP known
    as the module configurator can be run.  This utility will listen for
    decnet-address/hardware-address pairs and generate a listing of all
    these pairs.  You can then write a small program to scan this list
    and locate the duplicates and then use the Data Collector FM to send
    an alarm message into MCC.
    
    I've written this hack a few times but can't locate it at moment.
    
    - Mike  
2861.3please please?CADSYS::LEMONSAnd we thank you for your support.Thu Sep 10 1992 18:3712
Mike

If you run across this, could I have a copy?  Even as I type, we have an
instance of duplicate addresses in my facility.  I'd sure like to detect these
and fix them before going down unproductive ratholes (as we've done for two
days).

Thanks very much!

tl

p.s. this would be a dandy addition to the 'real' DECmcc suite, wouldn't it?
2861.4Cluster Alias?TOOK::MCPHERSONLife is hard. Play short.Fri Sep 11 1992 12:5920
re .2

>    To detect duplicate DECnet nodes on a LAN, a component of NCP known
>    as the module configurator can be run.  This utility will listen for
>    decnet-address/hardware-address pairs and generate a listing of all
>    these pairs.  You can then write a small program to scan this list
>    and locate the duplicates and then use the Data Collector FM to send
>    an alarm message into MCC.
>    
>    I've written this hack a few times but can't locate it at moment.

 Anything worth writing once is worth writing 4 or 5 times, right?  ;^)

 Won't the configurator show duplicate physical addresses for systems running
 cluster alias & wouldn't that set off 'false alarms' ?  

 /doug



2861.5here's some DCL...TOOK::MCPHERSONLife is hard. Play short.Fri Sep 11 1992 18:5294
Here's a starter DCL hack to detect multiple hardware addresses using the same
hardware address.  This script assumes that you've had the configurator module
running and listening long enough to get a decent picture of the network.

Try it out. If you think this is useful, then just bag on the extra line of DCL
to send a Data Collector event & you now have duplicate address detection for
DECnet.

/doug

$! CHECK_DUP.COM: detect duplicate physical addresses via configurator module
$! Doug McPherson 11-sep-1992 (creation)
$!
$ time_start = f$cvtime(,,"time")
$ if f$search("ether.out") .nes. "" then rename ether.out ether.old
$ write sys$output "Dumping configurator data..."
$ ncp sho module configurator kn circ char to ether.out
$!
$ if f$search("pair1.out") .nes. "" then rename pair1.out pair1.old
$ write sys$output "Thinning out the configurator data file..."
$ search ether.out "Physical address","Hardware address" /out=pair1.out
$!
$!Need to re-format the search output to include the physical address and
$!hardware address for each system on a single line (currently stored as adjacent
$!separate lines in the file).  
$!	PHYSICAL_ADDR1
$!      HARD_ADDR1
$!	PHYSICAL_ADDR2
$!      HARD_ADDR2
$!	PHYSICAL_ADDR3
$!      HARD_ADDR3
$!
$!They will be formatted into single line, comma-delimited records. E.g.  
$!	PHYSICAL_ADDR1,HARD_ADDR1
$!	PHYSICAL_ADDR2,HARD_ADDR2
$!	PHYSICAL_ADDR3,HARD_ADDR3
$!
$ if f$search("pair2.out") .nes. "" then rename pair2.out pair2.old
$!
$ write sys$output "Formatting the configurator data file..."
$ open/write outfile pair2.out
$ open/read infile pair1.out
$ read infile line
$
$read_loop:
$ read/end = done1/err=done infile phys_line
$ read/end = done1/err=done infile hard_line
$ phys_addr = f$extract(27,17,phys_line)
$ hard_addr = f$extract(27,17,hard_line)
$ write outfile hard_addr, ",", phys_addr
$ goto read_loop
$!
$done1: 
$ close infile
$ close outfile
$!
$! *Now* sort the file (using physical address as the key) 
$!
$ if f$search("pair3.out") .nes. "" then rename pair3.out pair3.old
$ write sys$output "Sorting the formatted data..."
$ sort pair2.out pair3.out 
$
$ write sys$output "Now scanning for duplicate physical addresses..." 
$ open/read infile pair3.out
$ read infile line
$ this_phys_addr = f$extract(0,f$locate(",",line),line)
$ this_hard_addr = f$extract(f$locate(",",line)+1,18,line)
$
$ write sys$output "These Physical addresses were advertised by hardware addresses as of ''f$time()'"
$ write sys$output "Physical Address    Hardware Addresses                     DECnet Address"
$!write sys$output "xx-xx-xx-xx-xx-xx   xx-xx-xx-xx-xx-xx, xx-xx-xx-xx-xx-xx   
$ write sys$output "--------------------------------------------------------------------------"      
$read_loop:
$ read/end = done/err=done infile next_line
$ next_phys_addr = f$extract(0,f$locate(",",next_line),next_line)
$ next_hard_addr = f$extract(f$locate(",",next_line)+1,18,next_line)
$ if this_phys_addr .eqs. next_phys_addr
$ then
$ 	hi_byte = f$extract(12,2,this_phys_addr)
$ 	lo_byte = f$extract(15,2,this_phys_addr)
$ 	hex_decnet = lo_byte+hi_byte
$ 	decnet_addr = f$string((%x'hex_decnet/1024)) + "." + f$string((%x'hex_decnet-(%x'hex_decnet/1024)*1024))
$
$ 	write sys$output "''this_phys_addr'   ''this_hard_addr', ''next_hard_addr'   ''decnet_addr'"
$
$ endif
$ this_phys_addr = next_phys_addr
$ this_hard_addr = next_hard_addr
$ goto read_loop
$!
$done: 
$ close infile
$ write sys$output "Elapsed time: ",f$cvtime("-''time_start'",,"time")
$ exit
2861.6sample output from LKGTOOK::MCPHERSONLife is hard. Play short.Fri Sep 11 1992 18:5526
some output from the procedure in -.1 here at LKG...

MCDOUG>> @check_dup.com
Dumping configurator data...
Thinning out the configurator data file...
Formatting the configurator data file...
Sorting the formatted data...
Now scanning for duplicate physical addresses...
These Physical addresses were advertised by hardware addresses as of 11-SEP-1992 14:40:37.00
Physical Address    Hardware Addresses                     DECnet Address
--------------------------------------------------------------------------
AA-00-04-00-01-FC   08-00-2B-1B-0B-D2, AA-00-03-01-3E-FF   63.1
AA-00-04-00-15-FC   08-00-2B-0F-83-0A, 08-00-2B-23-BE-D8   63.21
AA-00-04-00-1F-F9   08-00-2B-1A-64-B9, 08-00-2B-1D-2A-EF   62.287
AA-00-04-00-27-10   08-00-2B-0A-0A-71, 08-00-2B-24-22-90   4.39
AA-00-04-00-36-12   08-00-2B-05-A8-C6, 08-00-2B-1B-7A-53   4.566
AA-00-04-00-37-12   08-00-2B-04-E2-4B, 08-00-2B-07-E1-B3   4.567
AA-00-04-00-3F-DC   08-00-2B-0C-B7-15, 08-00-2B-0D-A4-87   55.63
AA-00-04-00-40-10   08-00-2B-0B-F6-3D, 08-00-2B-1A-07-F5   4.64
AA-00-04-00-4D-10   08-00-2B-11-58-A3, 08-00-2B-12-A9-83   4.77
AA-00-04-00-53-12   08-00-2B-07-E2-C4, 08-00-2B-1B-7B-41   4.595
AA-00-04-00-76-10   08-00-2B-15-3C-00, 08-00-2B-2B-08-A9   4.118
AA-00-04-00-80-DC   08-00-2B-04-AB-73, 08-00-2B-0C-40-C3   55.128
AA-00-04-00-DC-FD   08-00-2B-0C-82-1F, 08-00-2B-17-B0-AD   63.476
Elapsed time: 00:11:10.42
MCDOUG>>