Friday, July 8, 2011

Client/Server Communication Between Host OS and Guest OS in VirtualBox

Context:


Host OS:  Mac OS X
Guest OS:  Windows XP
VirtualBox


Problem:


I have IIS Express 7.5 running .NET web services in Windows XP.  I have Jetty running JEE web application in Mac OS X.  I need to make requests to IIS server, and in return, I also need to make requests to Jetty server.


Solution:


To enable the communication line to IIS Express in Windows XP, I need to set up a port forwarding with VirtualBox.  To do this, you go into the Network Adapters settings and choose "Port Forwarding,"  choose the plus sign (Insert new rule), you get a new row with six columns.  


Here's my settings:
  Name               Protocol         Host IP        Host Port       Guest IP     Guest Port
IIS Express         TCP           127.0.0.1         1071                                     1071


Guest IP is intentionally left blank.  When I do http://localhost:1071 in Mac OS X, the traffic gets forwarded to IIS Express in Windows XP running at port 1071.  One thing to note is that your Windows Firewall may block the traffic, so make sure that you allow that to happen.


To enable the communication line to Jetty from Windows XP, I don't need to set up anything.  I simply need to connect to it with its IP address.   In my case, my Mac has an IP address of 192.168.1.104, so I can connect to it with that IP address.

No comments:

Post a Comment