PLC4X (Proxy) (TCP)
Connection String Options
Name |
Type |
Default Value |
Required |
Description |
Name |
PLC4X (Proxy-Protocol) |
|||
Code |
|
|||
Maven Dependency |
<dependency> <groupId>org.apache.plc4x</groupId> <artifactId>plc4j-driver-plc4x</artifactId> <version>pre-release</version> </dependency> |
|||
Default Transport |
|
|||
Supported Transports |
|
|||
Config options: |
||||
|
STRING |
URL-Encoded connection string to use on the proxy side to reach the given PLC. |
||
|
INT |
5000 |
Default timeout for all types of requests. |
|
|
STRING |
Username for authenticating against the PLC4X proxy server. Authentication is mandatory. |
||
|
STRING |
Password for authenticating against the PLC4X proxy server. Authentication is mandatory. |
||
Transport config options: |
||||
tls |
||||
|
BOOLEAN |
true |
||
|
BOOLEAN |
false |
Tells the target to not validate the common name |
|
|
STRING |
TLS protocol version (e.g., 'TLSv1.2', 'TLSv1.3'). If not set, uses TLS 1.3 with fallback to TLS 1.2. |
||
|
STRING |
Path to keystore (PKCS12/JKS) containing the client certificate and private key for mutual TLS. |
||
|
STRING |
Password for the client keystore. |
||
|
STRING |
Keystore type (e.g., 'PKCS12', 'JKS'). Defaults to PKCS12. |
||
|
BOOLEAN |
false |
Log TLS session keys to the audit log in SSLKEYLOGFILE format for Wireshark decryption. |
|
|
INT |
5000 |
||
|
INT |
0 |
||
|
INT |
0 |
||
|
BOOLEAN |
true |
||
|
BOOLEAN |
false |
||
|
INT |
81920 |
||
|
INT |
81920 |
||
|
STRING |
|||
|
INT |
0 |
||
tcp |
||||
|
INT |
5000 |
||
|
INT |
0 |
||
|
INT |
0 |
||
|
BOOLEAN |
true |
||
|
BOOLEAN |
false |
||
|
INT |
81920 |
||
|
INT |
81920 |
||
|
STRING |
|||
|
INT |
0 |
||
Individual Resource Address Format
Connection String
The plc4x protocol connection has the following connection string format:-
plc4x:{transport}://{ip-address/hostname}:{port}?remote-connection-string={url-encoded-connection-string}
An example connection string would look like:-
plc4x://127.0.0.1?remote-connection-string=simulated%3A%2F%2Flocalhost
Note the transport, port and option fields are optional.
The remote connection string: simulated://localhost is encoded as simulated%3A%2F%2Flocalhost