DHCP with Cisco/Rockwell Devices
Geospark said:
...DHCP is used for assigning either static, or leased dynamic IP addresses...
...NB: Static is the preferred IP addressing schema for deterministic automation control networks. Dynamically assigning IP addressing on such a network could lead to many problems, complications, and potentially dangerous situations.
A bit of a discussion has sprung up here as a result of my "NB:..." statement above, so I'll clear up what I meant specifically.
When I stated that...
"...
Dynamically assigning IP addressing on such a network could lead to many problems, complications, and potentially dangerous situations"
...I did not mean that DHCP Servers should not be used,
at all, to assign IP addresses, but that DHCP Servers should not be used to
Dynamically assign IP addresses i.e. lease IP addresses that may expire, potentially resulting in a different leased IP address upon renewal.
From my top statement, DHCP Servers
can be used to assign Static IP addresses, which is the preferred addressing schema to use in industrial automation control systems. I just didn't elaborate on the recommended methods to do so (persistence/per port), as I was only giving a brief explanation to the OP and I didn't want to overload them with too much information too soon.
Static IP addressing does not necessarily mean that a device always uses a Static IP address stored in its internal memory. Static just means the IP address itself is statically allocated to that device, or port on a switch. "Where" the Static IP address is allocated from can vary, depending on the setup. It could be stored in the device's memory, or an embedded switch, or persistent to a port on a local managed switch, Rockwell calls this "
DHCP per port", or from a pre-assigned MAC/IP address table on a remote server, known as "
Automatic Allocation".
Static IP addressing does not necessarily imply no DHCP method should be used. What The Plc Kid is suggesting, DHCP Persistence, is very common in newer CPwE systems.
Let's see what some of the "experts" in this area have to say...
Cisco/Rockwell - Industrial Automation and Control System (IACS): Converged Plantwide Ethernet (CPwE) System Design said:
Cisco and Rockwell Automation recommend that IACS network developers use a static IP addressing schema for the Manufacturing zone, especially for allocating IP addresses to IACS devices in the Cell/Area zone. Cisco and Rockwell Automation now recommend DHCP Persistence as a valid option along with static addressing for deploying IP addresses for IACS devices...
...Static IP addressing is the traditional, default means to allocate IP addresses for both IACS devices (for example, drives and I/O) and network infrastructure devices (for example, Industrial Ethernet (IE) switches). Static IP addressing requires an implementer to manually configure an IP address on an IACS device as it is provisioned onto the IACS network. Static IP addressing is referenced directly (rather than a logical reference) by the IACS applications for communication and control purposes. Therefore, the IP addressing assigned must be consistent and defined for proper IACS application operation.
As IACS networks grow in size, so does the task of maintaining static IP addresses on IACS devices. During maintenance operations, where downtime cost and mean time to recovery (MTTR) is a significant issue, manual configuration of a static IP address for each replaced IACS device can take valuable time.
DHCP Persistence enables IACS implementers to reserve and pre-assign an IP address to a specific IE switch port.
This enables an IACS device connected to that IE switch port, configured for dynamic IP allocation, to always receive a consistent IP address regardless of its MAC address. This capability helps to reduce the amount of time required to provision or replace IACS devices, such as drives and I/O. This also helps to reduce the required level of skilled resources to provision or replace an IACS device.
However, they also state that...
Cisco/Rockwell said:
Although Cisco and Rockwell Automation now recommend DHCP Persistence as a valid option for IACS devices, Cisco and Rockwell Automation still recommend that network developers use a static IP addressing schema for IACS network infrastructure devices.
In other words, DHCP Persistence is a "valid option", but not their first preference.
If you read Rockwell's
EtherNet/IP Network Configuration (ENET-UM001K-EN-P), which applies to all of the following Catalog Numbers...
1756-ENBT, 1756-EN2F, 1756-EN2T, 1756-EN2TR, 1756-EN2TXT, 1756-EN3TR, 1756-EN2TSC, 1756-EN2TRXT, 1768-ENBT, 1769-L23E-QB1B, 1769-L23E-QBFC1B, 1769-L32E, 1769-L35E, 1783-ETAP, 1783-ETAP1F, 1783-ETAP2F, 1794-AENT, 20-COMM-E, 22-COMM-E, 1734-AENT, 1734-AENTR
...it states the following...
EtherNet/IP Network Configuration (ENET-UM001K-EN-P) said:
Configure an EtherNet/IP Communication Module to Operate on the Network
Use DHCP Software
Dynamic Host Configuration Protocol (DHCP) software automatically assigns IP addresses to client stations logging onto a TCP/IP network. DHCP is based on BOOTP and maintains some backward compatibility. The main difference is that BOOTP allows for manual configuration (static), while DHCP allows for both static and dynamic allocation of network addresses and configurations to newly attached modules.
Be cautious when using DHCP software to configure a module. A BOOTP client, such as the EtherNet/IP communication modules, can start from a DHCP server only if the DHCP server is specifically written to also handle BOOTP queries. This is specific to the DHCP software package used. Consult your system administrator to see if a DHCP package supports BOOTP commands and manual IP allocation.
IMPORTANT If you do not click Disable BOOTP/DHCP, on a power cycle, the host controller clears the current IP configuration and begins sending BOOTP requests again.
ATTENTION: The EtherNet/IP communication module must be assigned a fixed network address. The IP address of this module must not be dynamically provided. Failure to observe this precaution may result in unintended machine motion or loss of process control.
As some read all this, a little confusion might be arising?
They say it's "not ok" to dynamically assign IP addresses?
...but it's "ok" to assign IP addresses Dynamically using DHCP Persistence?
The author is referring to the historical meaning of Dynamically assigning leased IP addresses, which should be avoided, but is not specifically saying not to use DHCP Persistence. Most likely that text is a few years old, and has not been updated as the publication was superseded.
Dynamically just means, "actively", or "on-the-fly", or simply "as needed". So using DHCP you can Dynamically assign leased IP addresses, or Dynamically assign Static addresses.
Persistence is a "valid" method of Dynamically assigning Static IP addresses, to devices connected to a port, as and when needed.
G.