Sanal makinedeki bir web sunucusuna ana makineden nasıl erişebilirim [kapalı]


29

VirtualBox'ın ubuntu çalıştığı bir Windows Vista makinem var.

Ubuntu'da http://127.0.0.1:3000/ adresinde bir web sunucusu çalıştırıyorum.

Bu adrese ana makinemden (pencere kutusu) nasıl erişirim?


En basit seçenek port Yönlendirme kullanmaktır. Ayar-> Ağ altında yapılandırılabilir. Bu linki
spartan

Misafirinizin web sunucusunu 127.0.0.1'de gerçekten yapılandırdıysanız, davet edenin dışından erişemezsiniz. Localhost / 127.0.0.1 bir geridönüşüm adaptörüdür (hafıza içi) ve düzgün çalışması için ağ kartının takılmasını bile gerektirmiyor. Web sunucunuzun ipini geri döngüden başka bir şeyle değiştirirseniz, aşağıdaki cevaplar size yardımcı olabilir.
Mladen B.

Yanıtlar:


28

Konuk ağı modunuzu NAT'tan Bridged'a değiştirebilirsiniz. Sadece Ubuntu konuğunuzu kapatın, VirtualBox içindeki Ayarlar sayfasına gidin, Ağ kategorisini seçin ve Ekli liste kutusunu NAT'dan Bridged Mode'a değiştirin.

Düzenle:

Yukarıdaki adımları takip ettikten sonra Ubuntu'yu yeniden başlatın ve tahsis edilen IP yükleme sonrasında karşılama ekranında gösterilecektir. yani hoşgeldin mesajında ​​şöyle bir şey söylemeli:

Eth0 için IP adresi: 192.168.1.3

Bu adresi, ana makinenin tarayıcı çubuğunda kullanın ve ardından kullandığınız bağlantı noktasını kullanın. Bağlantı noktası 80 dışındaki bir şeyse, yani bağlantı noktası 666'yı kullanacak şekilde ayarladıysanız, adres 192.168.1.3:666 olacaktır.

IP'yi bulmanın başka bir yolu, yönlendiricinizde yerleşik olan HTTP sunucusuna bağlanmak ve LAN ayarlarına bakmaktır. Ağdaki her makine ana bilgisayar adı ve IP'ye göre listelenmelidir. Yönlendiricimde sahip olduğum çoğu kişide, bunu adres çubuğuna 192.168.1.1 yazarak yapabilirsiniz. bu başarısız olursa 81 numaralı bağlantı noktasında aynı adresi deneyin. Bu başarısız olursa, KULLANIM KILAVUZU OKUYUN.


Peki IP adresinin ne olduğunu nasıl öğrenebilirsiniz? Thx
SSH Bu

Bu işe yarayacak, ancak sadece ana bilgisayar seçeneği bu vm'yi şirket ağına maruz bırakmadı
Carlos Garcia

2
Burada konuğun 127.0.0.1'deki son noktasına yalnızca konuğun içinden erişilebileceğini düşünen tek kişi ben miyim? Bu tür bir uç noktaya konuk makinesinin dışındaki herhangi bir yerden erişmenin yolu olmamalıdır (çünkü geridönüşümlü bir adaptör olduğundan, takılı bir ağ kartı gerektirmez).
Mladen B.

Eğer bu 192.1681.3’ü Godaddy’de bir A kaydı için IP olarak girersem işe yaramazsa, açıkçası harici bir IP adresi beklerim, eğer koyarsam, yine de bazı tahsisler için işe yaramazsa, daha önce yerel olarak bir alan adını test etmek istiyorum.
EC2'de

10

Ubuntu konuk işletim sisteminde ağ kurulumunu nasıl yaptığınıza bağlıdır. NAT'ı kullanmak üzere ayarladıysanız ve ağınızda çalışan bir DHCP sunucunuz varsa, yalnızca şunu çalıştırın:

ifconfig | grep inet

Ubuntu kutusunda - Ubuntu misafirine atanan IP adresini göreceksiniz.

Örnek:

#ifconfig | grep inet
  inet addr:10.0.0.2  Bcast:10.255.255.255  Mask:255.255.255.0
  inet addr:127.0.0.1  Mask:255.0.0.0

O zaman sadece http://10.0.0.2:3000


Eh, benim durumumda adres 10.0.2.15:3000/public olmalıdır ve varsayılan olarak uzak DHCP modunda çalışır. ( Ubuntu makinesi ayrıca NAT kullanacak şekilde yapılandırılmıştır) ancak yanıt alamıyorum :(
Argh

Hmmm sadece bir DHCP sunucum olmadığını farkettim - uzak manzaradayım ...
Argh

VirtualBox, sanal makineleri yöneten kendi DHCP sunucusuna sahiptir - aksi halde sanal makineler, statik olarak ayarlamadan otomatik olarak bir IP adresi alamazlar. Sanırım probleminiz, Apache'nin tüm arayüzlerde dinlememesi olabilir - sadece localhost (127.0.0.1). / Etc / apache2 / sites-available / direktif dinle varsayılan emin olun 80, başına değil 127.0.0.1:80 diyor help.ubuntu.com/9.04/serverguide/C/httpd.html
Cory Plastek

Muhtemelen nedeni budur.
fsckin

4

Windows kutunuz ve Ubuntu kutunuz (fiziksel veya sanal olsalar da bu durumda gerçekten önemli değiller), aynı alt ağda bir IP adresine sahip olmaları gerekir, böylece TCP / IP aracılığıyla birbirleriyle konuşabilirler. Özel IP alt ağlarından birini kullanarak her bir işletim sistemine ek bir adres atayabilirsiniz (bkz. RFC 1918 ). Her ikisi de aynı alt ağda bir adrese sahip olduklarında, web sunucusunu Ubuntu’ya verdiğiniz adresi dinleyecek şekilde yapılandırın ve yüklemek için bu IP’yi Windows içindeki tarayıcıda kullanın.

Şimdi yapılandırdığınız IP, 127.0.0.1, yerel ağ arayüzü için geridöngü adresidir. Bu adresi hiçbir zaman farklı bir sistemdeki bir şeye erişmek için kullanmazsınız, yalnızca bulunduğunuz sisteme geri dönmek için. Sanal bir sistem kullanırken, tıpkı bir ağ noktasından ayrı bir bilgisayarı yaptığınız gibi kullanın.


2

Sorununuzu çözmek için yeni bir ağ bağdaştırıcısı eklemenizi ve bunu yalnızca Ana Bilgisayar bağdaştırıcısı olarak yapılandırmanızı öneririm .

Şimdi sanal kutu örneğini ve ardından yeni ağın ipinin ne olduğunu görmek için fsckin'in önerdiği şeyleri çalıştırın .

Bu şekilde, bilgisayarınız ve sanal makinenizle birlikte bir alt ağınız olur.


Yani ... dediğin gibi yaptım IP adresimi aldım. Daha sonra tahsis edilmişIP : 3000 kullanarak web sunucusuna (konuk içinde 127.0.0.1:3000 olarak erişebildiğim) erişmeye çalıştım ve bir yanıt alamadım. Ancak ev sahibinin
ipini

Güvenlik duvarını 3000 numaralı bağlantı noktasında açmanız gerekir.
fampinheiro

Yalnızca ana bilgisayar kutunun dışında çalışmayacak: serverfault.com/questions/205477/…
givanse

0

Her şeyden önce, Cevap 1’in söylediğini yapmalısınız:

"Konuk ağı modunuzu NAT'tan Bridged'a değiştirebilirsiniz. Ubuntu konuğunuzu kapatın, VirtualBox'taki Ayarlar sayfasına gidin, Ağ kategorisini seçin ve Ekli liste kutusunu NAT'dan Bridged Mode'a değiştirin."

Ardından ip adresinizi almak için:

Sanal makinenizde bir komut istemi açın ve şunları yapın:

ip addr show

Muhtemelen şuna benzeyen bir çizgi göreceksiniz:

inet 192.168.43.96/24 ....

Ondan önce de bir çizgi var.

inet 127.0.0.1

Ama bunu istemiyorsun! 192 adresini istiyorsun. Yerel ağınızdaki sanal makinenin adresi. Aynı yerel ağa bağlı herhangi bir cihaz tarafından erişilebilir olmalıdır.

Şimdi ana makinenizde / etc / hosts dosyasını düzenleyin (Not ~ / etc) Dosyanın adı host'tur (bir klasör adı değil)

şuna benzeyen bir satır ekleyin:

192.168.43.96 myvm.nameofmywebsite.com

Şimdi ana makine tarayıcınıza gidin ve myvm.nameofmywebsite.com yazın

Umarım bu yapacak!

Ancak, yerel adresinizi görme şeklini alacak güvenlik özelliklerine sahip bir yönlendiriciniz olabilir. Yapmayı deneyebileceğiniz şey, cep telefonunuzun etkin noktasını ağınız olarak kullanmaktır. Bu benim için çalışıyor. Yalnızca ana makinenizdeki ağı değiştirdiğinizde, sanal kutunuzu yeniden başlatmanız gerektiğini unutmayın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.