title: WebDriverException: Error forwarding the new session Error forwarding the request Connect to my_ip:5555 [/my_ip] failed: Connection timed out
body: <p>I installed selenium node on AWS windows and started it. And I setup Jenkins, git, Seleniuim hub on AWS Linux. When i'm building app on Jenkins, selenium hub is trying to connect to selenium node of AWS windows with <em>private IP address</em>. And i'm getting following exception:</p>
  
  <pre><code>org.openqa.selenium.WebDriverException: 
  Error forwarding the new session Error forwarding the request Connect to windows_private_ip:5555 [/windows_private_ip] failed: Connection timed out (Connection timed out)
  Command duration or timeout: 190.25 seconds
  Build info: version: '3.5.1', revision: '9c21bb67ef', time: '2017-08-17T15:26:08.955Z'
  System info: host: 'some_host_name', ip: 'some_ip', os.name: 'Linux', os.arch: 'amd64', os.version: '4.9.76-3.78.amzn1.x86_64', java.version: '1.8.0_151'
  Driver info: driver.version: RemoteWebDriver
  Caused by: org.openqa.grid.common.exception.GridException: Error forwarding the new session Error forwarding the request Connect to windows_private_ip:5555 [/windows_private_ip] failed: Connection timed out (Connection timed out)
  </code></pre>
  
  <p>Grid Node command:</p>
  
  <pre><code>C:\Users\Administrator&gt;java -Dwebdriver.chrome.driver=./drivers/windows-driver/chromedriver.exe -jar C:\\Users\\Administrator\\Desktop\\selenium-server-standalone-3.0.1.jar -role node -hub http://ip_address:4444/grid/register
  </code></pre>
  
  <p>My code is:</p>
  
  <pre><code>if (browser.equalsIgnoreCase("FF")) {
              System.setProperty("webdriver.gecko.driver", "drivers/windows-driver/geckodriver.exe");
              DesiredCapabilities cap = DesiredCapabilities.firefox();
              // Set the platform where we want to run our test- we can use
              // MAC and Linux and other platforms as well
              cap.setPlatform(Platform.ANY);
              cap.setCapability("gecko", true);
              // Here you can use hub address, hub will take the
              // responsibility to execute the test on respective node
              URL url = new URL("http://hub_public_ip:4444/wd/hub");
              // Create driver with hub address and capability
              gbb = PageFactory.initElements(new RemoteWebDriver(url, cap), GuruBase.class);
          } else if (browser.equalsIgnoreCase("IE")) {
              System.setProperty("webdriver.ie.driver", "drivers/windows-driver/IEDriverServer.exe");
              gbb = PageFactory.initElements(new InternetExplorerDriver(), GuruBase.class);
  
          } else if (browser.equalsIgnoreCase("GC")) {
              System.setProperty("webdriver.chrome.driver", "drivers/windows-driver/chromedriver.exe");
              ChromeOptions cho = new ChromeOptions();
              cho.addArguments("disabled-extensions");
              cho.addArguments("--start-maximized");
              gbb = PageFactory.initElements(new ChromeDriver(cho), GuruBase.class);
          }
  
          else if (browser.equalsIgnoreCase("html")) {
              gbb = PageFactory.initElements(new HtmlUnitDriver(true), GuruBase.class);
          }
  </code></pre>
  
  <p>I'm running selenium hub on Jenkins.</p>