java.net.SocketException: Permission denied: connect
when i use two netcard in same computer, I could ping the remote i/o but i couldn't connect it with httpjob(successful always return false). it is fail too when i connect with browser.
Ok, I'm guessing here, but I think you are having the following issue:
1) The data collect computer's web server has a security setting that only allows access to it from certain subnet(s). In this case, some rule allows access from the 192.168.1.* network, but not others (at least not the subnet your office computers are working in).
2) When you install the second NIC, Windows binds your application to the NIC with the office subnet, not the I/O subnet.
Because of this, your application and web browsers are blocked from accessing your I/O web server, since the I/O web server thinks you are accessing it from an office network IP address, not an I/O network IP address.
Solutions:
1) Change whatever firewall, access rule that is in place on the I/O web server that does not allow access from the office network. If security is a concern, you could (if not already) give your computer a static office IP and only add this static IP to the firewall/access rule.
2) Try something programmatically that makes you app bind to the right interface (out of my scope and may not be possible in Java).
3) Change the binding order in Windows. Looks like this may be feasible in Windows 8.1 and earlier, but not anymore in Windows 10 (as described in
Adjusting the Network Protocol Bindings in Windows 10).
The least invasive solution would be #3 (for the I/O web server, especially if we are talking about multiple I/O servers), but with Windows 10 you may need to resort to #1. #2 may not even be possible.