HTTP request from one Virtual machine to another - http

I have started 2 virtual machines in my computer (using VirtualBox on Windows 8.1) in same time. On first i have Linux Debian with Apache http server. On second running Windows XP. Both networks are set as NAT.
Http request must have specific URL (for example: "xxx.local"). So when I try connect from my real computer to virtual machine with Linux server its easy and its work, there I add only redirect for domain "xxx.local" to virtual machine IP and everything working fine.
But I need send request and receive reply from second virtual machine with Windows XP.
Is there any way to do that?

You can add additional network adapters to both VMs attached to one host-only network.

Ok I got it. There is important to set "host only network adapter" for both virtual machines (but not the same one!) with same IP radius. Then you set IP of server machine to target domain in host file and that is all.
Works fine :-)

Related

Accessing a web server on a Virtual Machine from another computer

I have setup a Virtualbox with a Linux environment running a web server. The host is running Windows 7, and I can access the web served by the server in the virtual machine from the host's browser.
However, I would like to be able to access this web server from another computer; say, a colleague on the same network that the host is in. Is there a way of doing so?
Summary:
Host (win7) interfaces:
- 172.16.1.15 (internet facing)
- 192.168.55.1 (VM facing)
Guest (linux with web server running) interface:
- 192.168.55.2
Web server is reachable from Host (through 192.168.55.1 - 192.168.55.2 interface)
Web server is NOT reachable from other computer on 172.16.1.X network.
Can you guys help me out on what I may be able to do in order to achieve this?
Thank you!
Well, despite downvotes without any kind of explanation why (thank you!), I have found a way of doing what I intended on Virtualbox settings:
On machine, right click, Settings > Network > Advanced > Port forwarding, and then, fill with corresponding data, i.e.:
host ip could be 0.0.0.0,
host port should be the port other users will use to access your computer (and thus the VM),
guest ip is the VM ip, and
guest port should be 80 if it is a web server typically).
Thank you, hope this helps to the next one running into this!

IIS on Virtual Computer

I'm new here. I'm developing some Asp.Net applications and i wanna test them on my virtual IIS. I have installed Windows 7 and enabled IIS features on a VmWare virtual computer. I'm using IIS 7 recommend configuration and my virtual computer have a real internet network IP. I wanna explore my websites via writing my virtual computer's IP to my browser. How can i do that?
First make sure your VMWare machine has a network interface that allows it access to the host. So, in other words: the two machines (host and virtual machine) must be able to "see" each other on the network.
Next, open a Cmd window on the virtual machine and execute ipconfig. That will tell you the IP address of the virtual machine.
Next, ping that IP address. It should work.
If it does, try to access the website on the virtual machine by typing the IP address into a browser on the host machine.

Access localhost on the main machine from VMware Workstation 8 for ASP.NET development test

I run an ASP.NET Development Server (that came with MS Visual Studio 2010) on my Windows 7 machine. I'm currently developing an ASP.NET C# web application and to test it on Windows 7 machine I need to navigate my web browser to an address like this:
http://localhost:59215/Default.aspx
I also have the VMware Workstation 8 installed on that Windows 7 with other OS as virtual machines. I need to try to load my web app from those virtual machines, but when I type the above address there I get "Cannot display page" error in a browser. Note that I can access internet from a virtual machine itself, but for some reason localhost on the main machine is not accessible.
Any ideas how to set this up?
OK, I got it!
For those who're interested, here's how:
Say, my developement URL on the host computer is:
http://localhost:59215/Default.aspx
Download this util, called tcpTrace and run it on a host machine. When it starts configure it as follows:
Listen to port #: 80
Destination Server: localhost
Destination Port #: 59215 (which will be different in your case)
Click OK and let tcpTrace run on the host computer.
On the virtual machine navigate the browser to the IP address of the host computer, for instance in my case:
http://192.168.0.4/Default.aspx
and it will work!
PS. To get an IP address on the host machine, run ipconfig there (in a command prompt window). Your IP will be presented in the "IPv4 Address" line for network you're connected on.
PS2. Also my Windows 7 (host) doesn't come with any third-party anti-virus or firewall. It has a built-in Windows firewall and MS Security Essentials as an AVP. So if your setup is different one needs to open the incoming port 80.
PS3. Speaking of the VMWare Workstation, the virtual machine's network adapter setting is set on "NAT: Used to share the host's IP address" as it came out-of-box when you install it.
localhost is the local machine (to the OS).
I'm not sure if the VS dev server will allow external connections, you may want to install IIS - either way, you'll have to open up the Windows Firewall to allow external connections.
I'm no VMWare user but each OS will have its own IP address(?) - and that's how you'd connect to the Windows 7/IIS image. http://the.ip.address.of.the.win7.image/

Connect to server in vmware player while host is not connected to a network

I am using VMWare Player 3.1.0 on Host OS Windows 7 Professional 64-bit. My guest is is SUSE Linux ES 10. My guest OS (SUSE) runs JBoss App Server which I access from host using HTTP. I used a "Bridged" connection to set up all this.
My problem:
When I am connected to network on the Host (using wired network adapter) I can connect to the http server on the Guest OS and browse the application. However, when I am disconnected from the network on Host (unplugged the wire), I cannot access to the guest OS app server and browse the application. I use the guest OS ifconfig command to find out ip address of the guest OS. This ip address does not change whether connected or disconnected. I have even tried using Wireless Data card, but that does not work either.
I have tried "NAT" as well as "Host Only" connection and rebooted the guest but it does not work either. I think for some reason the guest OS can only recognize the physical network card (which is disconnected).
I need to run this machine (my laptop) independently of the network because I use this for demo and need to be able to connect from my host OS to Guest OS.
I am not sure I understand exactly what you are trying to do, but I do know setting up a working NAT configuration will offer you the most flexibility.
Click the networking icon and select settings, Select NAT.
Follow these steps on your Unix OS
cd /etc/sysconfig/network-scripts
Make a backup of your ethernet adapter configuration
cp ifcfg-eth0 ifcfg-eth0.bak
Next modify the settings to look like the following:
DEVICE="eth0"
BOOTPROTO="dhcp"
HWADDR="What ever was here on your system"br/>
NM_CONTROLLED="yes"
ONBOOT="yes"
Save your changes
Restart your network adapters
/etc/init.d/network restart
Try nslookup www.google.com
You should now be able to connect back and forth from your Windows Host and Linux guest.
theJay28
-p.s. I had screenshots, but I do not have the 10 points yet to post images.
I figured that the solution is to restart the VM after making the changes to the NetWork setting on the VMWare. I selected Network for the VM as "Host Only" shutdown the VM and started it again. After that I was able to do what I wanted to do (i.e. browse the web application on guest from the browser in the host machine) without connecting the host to the network.
So key to the solution in my case was to make the network changes and restart the VM.
Any comments suggestions welcome...

Debug website on host from virtual machine

I have a Windows 7 machine hosting a Windows 7 virtual machine. I am developing a web application using visual studio 2010 on my host machine. I want to run the application in debug mode and access my localhost server from a browser on the virtual machine. (The purpose of this is to be able to debug an application that uses Windows Authentication using different users without having to log off and on for different users on my host machine...)
I am using a bridged connection for the virtual machine. I googled how to solve this problem and most of the threads that I found said that if I was using a bridged connection, I could access the server on the host machine by just entering the IP address of my host machine into the url in the browser of the virtual machine. I have tried some different urls using the IP but none of them have worked.
As an example, suppose I run my web application in visual studio on my host machine and its url is
http://localhost:62789/MyPage.aspx
Assume also that I ran ipconfig in CommandPrompt on my host machine and found out that the IP address for my host machine is xxx.xxx.xxx.x. What url should I enter on the virtual machine to access my web application?
Thanks in advance.
EDIT:
I set up IIS to host the web project. After that, I just added the following line (xxx.xxx.xxx.xxx is my IP) to my hosts file and I was able to access the website from the virtual machine:
xxx.xxx.xxx.xxx MyWebsite.net
I also had to edit my firewall settings.
I personally found it easiest to setup my virtual machine using the Microsoft Loopback Adapter, and assigning the virtual machine to that adapter. The Guest OS will be assigned it's own IP with DHCP. Using the Loopback Adapter will basically put your host and guest OS on the same network. The guest will only be able to access the host, and will not be able to access the internet.
You could then access the host from the guest using whatever ip address you see on the host(run ipconfig/all on the host).
Edit: FYI I am using Virtual PC so your milage may vary. THe Loopback Adapter is a free download from Microsoft.
Edit2: You will probably need to open ports on the host machine to allow access to the web server also. The guest OS's request will still be going through the Windows firewall
It seems like you might be using VisStudio's integrated Web Server. I'm not sure this can accept requests from any host other than localhost.
Remote machines cannot connect to Visual Studio web server
Simple solution? Use IIS to host the project. Once IIS is installed (if not already) it's easy to change the project settings such that a virtual directory is created and debugging occurs in IIS.

Resources