Find Ethernet readers via SLP
With Service Location Protocol (SLP), you can locate all ID-engine XE readers in the network and retrieve their basic properties including IP address, serial number, and firmware version.
Readers must not be protected by a firewall.
If you implement your host application as a server and want to use SLP to deploy your configuration, please use ConfigCard deployment instead.
Send SLP requests
We recommend you use the open-source implementation OpenSLP.
The following sections show how to send requests using OpenSLP's command line tool slptool
.
Retrieve service URL
A reader's service URL consists of its IP address and port. You can retrieve it by sending a service request.
-
Service request:
slptool findsrvs service:x-proxreader
The parameters
<predicate>
and<SLP SLI>
are not supported. -
Reply:
service:x-proxreader://[address]:[portnumber]
- [address] is the reader's IP address in dotted decimal notation.
- [port] is 2939, which is the port for BRP over TCP.
Retrieve attribute list
The attribute list characterizes a specific reader and helps to identify it. You can retrieve it by sending an attribute request.
-
Attribute request:
- To address all readers:
slptool findattrs service:x-proxreader
- To address a specific reader:
slptool findattrs service:x-proxreader://[address]:[portnumber]
The parameters
<tag-list>
and<SLP SLI>
are not supported. - To address all readers:
-
Reply: The reader replies with its full attribute list as shown in the table below.
Attribute | Source
|
Type | Description |
---|---|---|---|
x-schema-version |
fix | integer | Version of the attribute definition specification (currently: 1) |
x-ip-settings-type |
config1 | integer |
|
x-ip-address-status |
state | string | Bitmask indicating current IP address status:
|
x-configuration |
config1 | string | String in the format #####-####-####-## indicating the deployed project configuration or, if not available, base configuration of the reader |
x-friendly-name |
config1 | string | Name assigned to this specific reader to allow end users to identify it |
x-firmware-info |
fix | string | A string in the format #### ######### #.##.## ##/##/## (firmware id, firmware name, firmware version, creation date) characterising the deployed firmware |
x-host |
config1 | string | Hostname or IP address of primary host |
x-althost |
config1 | string | Hostname or IP address of secondary host |
x-serialnumber |
fix | string | Decimal serial number of the device (8 digits) |
Scopes
SLP scopes allow administrators to create functional SLP "domains" for administrative and scalability purposes. BALTECH readers support the following scopes:
-
DEFAULT: This is an all-encompassing scope that is available by default. To search for readers in this scope, you don't need to specify it in your request.
You can replace the default scope by 1 custom scope of max. 10 characters.
-
BALTECH: This is the scope encompassing all BALTECH readers. You can't replace or change it. This is to ensure that BALTECH ToolSuite can always reach readers via this scope, even if you replace the DEFAULT scope with a custom one.
To search for readers in this scope, specify it using the-s
option inslptool
:
Addressing methods
For all requests, you can use the following addressing methods:
- Unicast
- Broadcast
- Multicast; supported protocol: IGMP v1
Network coverage and device roles
You can send SLP requests to an individual reader, all readers in a subnet, or all readers across multiple subnets. Depending on the intended coverage, you need to assign the appropriate role to the device that searches for readers. This can e.g. be a maintenance laptop.
Coverage | Device role | Procedure | |
---|---|---|---|
Individual reader | Before installation | User Agent (UA) | Connect the UA to the reader in maintenance mode |
Readers in the same subnet | After installation | User Agent (UA) | Connect the UA to the subnet |
Readers across subnets | After installation | Directory Agent (DA) | Place a DA in each subnet |
User Agent (UA) vs. Directory Agent (DA)
A DA is a device that caches services information. DAs are recommended for larger networks to reduce the amount of traffic and extend SLP coverage to subnets. If you have DAs, User Agents (UAs) are required to communicate with them instead of communicating with readers directly.
DA registration
You can specify a DA in the reader configuration or set it via DHCP. The DHCP-defined DA overwrites a configured DA. Readers also find DAs dynamically using active and passive DA discovery. As soon as a reader finds a new DA, it registers with it. Registration is restarted after 75% of the lifetime has expired. A maximum of 2 DAs is supported per network.
Reducing SLP network load
By default, SLP as well as active and passive DA discovery are enabled. If you want to reduce network load, we recommend you disable DA discovery: In this case, the SLP service agent of the reader will only respond to service requests, but will no longer send out messages for DA discovery and registration.
Don't disable SLP entirely
BALTECH ToolSuite uses SLP and would no longer work.