Похоже, карел почему-то "забанил" все исходящие порты ниже какого-то номера. Точнее не забанил, а обычно так проявляются различного рода "костыли".
OPC-сервер не выбирает порты выше 49152, исходящий порт выбирается самой операционной системой рандомно из диапазона 1..65535, исключая некоторые предопределённые порты. Т.е. рано или поздно, пцо откажется ответить и OPC-серверу.
Вся логика работы TCP-стеков состоит в том, что при инициации запроса драйвер выбирает первый попавшийся свободный порт и с него отправляет запрос на соединение. Запрос отсылается не абы куда, а уже на чётко предопределённый порт. За разными службами и протоколами зарезервированы определённые порты. Например, протокол http прослушивает 80-й и 8080-й порты, ftp прослушивает порт с номером 21. И так далее.
Модбас прослушивает свой порт, имеющий номер 502. Увидев к нему обращение, он либо открывает первый попавшийся свободный порт из диапазона 1..65535, либо со своего порта, 502-го отвечает на тот порт, с которого пришёл запрос. Именно поэтому Modbus-TCP поддерживает кажущуюся мультимастерность. Это особенность работы протокола TCP, в котором порты не пересекаются до тех порт, пока что-то есть свободное.