Необходимо проверить настройку на роутере(виртуальном) которая обрезает количество открытых socket соединений.
поставьте легко проверяемое ограничение, например 2, и проверьте nmap'ом, что два nmap'а запустить и установтиь соединение дают, а в третьем соединение не проходит.
Разные порты=разные сокеты. Утверждение верно?
два разных соединения на один порт тоже требует два разных сокета.