Internet address collisions


Contents


Introduction

The Internet module now issues a service when it detects another system on the network with the same address. Components may recover from this by reconfiguring the interface.


Service calls


Service_InternetStatus
(Service &B0)

Duplicate Internet address detected
On entry
R0=8 (subreason code)
R1=&B0 (reason code)
R2=pointer to zero-terminated interface name, eg 'ea0'
R3=pointer to Driver Information Block for interface
R4=IPv4 address which has been duplicated (network byte order)
R5=pointer to hardware address of system with a duplicate IP address
On exit
R0-5preserved
R0=0 to claim service when duplicate address has been resolved, or preserved to shut down the Internet module
Use

This service call is issued by the Internet module (version 5.08 or later) when it detects a machine using a duplicate IP address. This is normally detected when an incoming ARP packet is received with our IP address but a different hardware address.

As a probe, whenever an interface is reconfigured, the Internet module sends out an ARP request for our IP address to make any such machines reply. That will then trigger this service call.

Normally, the Internet module will shut down outright as a safety measure if this happens. However, if this service call is claimed it will continue operation. It is expected that anyone claiming this service call should take appropriate action; for example the DHCP module might remove our IP address, send a DHCPDECLINE message and go back into the DHCP INIT state.

Related APIs
None

Document information

Maintainer(s):
History:
RevisionDateAuthorChanges
12006GerphInitial version
  • Released as RISC OS Select documentation.
228 Dec 2021GerphPRM-in-XML conversion
  • Created from original Select documentation.
Related:http://home.gerph.org/~charles/Reference/RISCOS/LastRODocs/HTML/Networking/AddressCollision.html
Disclaimer:

© Gerph, 2021.