Virtualbox 및 Vagrant 네트워크 구성 Windows 8.1


0

호스트의 포트 8000을 통해 방랑 상자 (Laravel Homestead)의 웹 사이트에 액세스하려고하지만 Chrome 및 IE에서 항상 ERR_CONNECTION_REFUSED 오류가 발생합니다.

여러 설정을 시도하고 호스트 및 게스트 구성을 변경했지만 (NIC, 방화벽 등) 필사적입니다! 얼마 전에 Windows 7 컴퓨터에서 가져 왔지만 이제 어떻게했는지 기억이 나지 않습니다.

어쨌든, 나는 그것이 도움이된다면 현재의 홈 네트워크를 설명하기 위해 최선을 다할 것입니다. 라우터 A와 B가 두 개 있습니다. 라우터 A는 ISP의 라우터이며 DHCP 서비스 (192.168.1.50-192.168.1.254)와 방화벽이 중간 설정입니다. 라우터 B는 침실에 있으며 이더넷 케이블을 통해 라우터 A와 연결됩니다. DHCP가 꺼져 있고 게이트웨이는 라우터 A의 IP입니다. 호스트 컴퓨터는 이더넷 또는 무선을 통해 라우터 B에 연결할 수 있습니다. 라우터 측에서는 시도한 일부 설정으로 방화벽을 비활성화하려고 시도했습니다.

내 호스트 컴퓨터는 Windows 8.1 64 비트를 실행하고 게스트 OS는 Ubuntu Server 14.10 64 비트입니다. 방랑 상자가 NIC를 구성했습니다. NIC 1은 다양한 포트 포워딩 구성 (특히 ssh-> 2222-> 22, tcp8000-> 8000-> 80)을 가진 NAT입니다. NIC 2는 IP 주소가 192.168.10.10이고 서브넷 마스크가 255.255.255.0 인 호스트 전용입니다.

호스트 브라우저의 포트 8000 ( http://192.168.10.10:8000 )을 통해 이미 구성된 웹 사이트에 액세스하려고 할 때까지 모든 것이 잘 작동합니다 (SSH ). 항상 그 오류가 발생합니다.

Virtualbox의 구성을 확인했습니다 (처음에 vagrant 또는 virtualbox에 NIC 2의 IP가 192.168.10.1로 잘못 설정되어 버그가 수정되었지만 여전히 이득이 없습니다). 다른 서브넷 마스크 (255.255.0.0)로 테스트했습니다. 모든 라우터 방화벽을 비활성화하고 Windows 방화벽도 확인했습니다. 나는 이것을 모든 곳에서 봤다. 다른 개인 네트워크 IP를 시도했습니다. 게스트에서 etc / network / interfaces 구성 파일을 편집하고 iptables, route -n, netstat -rn ... 문제 해결을 시도하거나 확인했습니다. Ping은 호스트에서 게스트로 또는 그 반대로 작동합니다. 그러나 호스트 컴퓨터의 telnet 192.168.10.10 8000은 연결이 거부되었다고 말합니다.

그래도 Wi-Fi를 비활성화하고 이더넷 케이블을 통해 내 컴퓨터를 연결하려고했지만 틀린 경우 수정하지만 홈 네트워크는이 상황과 관련이 없어야합니까?

나는 이것에 대한 희망을 잃기 시작했고, 정말 실망스러워지고 있습니다!

어떤 도움이라도 가장 환영받을 것입니다!


나는 이것이 OS에 문제가 아니라고 생각합니다. 네트워크 라우팅 설정을 확인하고 네트워크에서 웹 사이트를 핑하고 텔넷으로 연결할 수 있는지 확인하십시오.
vembutech

두 가지 방법으로 모두 핑을 할 수 있습니다. 192.168.10.10:8000의 호스트에서 게스트로의 텔넷은 오류가 없으며 빈 화면 만 표시합니다 (연결되어 있다고 가정합니다). 그러나 브라우저를 통해 웹 사이트에 액세스 할 수 없습니다. 다른 조치 / 문제 해결은 무엇입니까?
tiagosv

답변:


0

나는 두 분의 컴퓨터 (윈도우 8과 윈도우 10)에서 아주 똑같은 문제를 겪었다.

netstat -ntlp | grep LISTEN

그리고 이것을 Laravel의 IRC 채널에있는 누군가와 비교했을 때, 가장 먼저 주목해야 할 것은 netstat 출력에서이 nginx 항목이 누락되었다는 것입니다.

tcp        0      0 0.0.0.0:80              0.0.0.0:*   4/nginx: worker

내가 잘못하고있는 것은 내가 방랑자 명령 을 사용 하고 있었기 때문에 (아마 잘못되었을 수도 있음) 대신 홈스테드 명령 을 사용하고있었습니다 .

homestead init
homestead up
homestead ssh
#homestead halt, homestead provision, homestead destroy, etc...

이 명령을 고수하면 괜찮을 것입니다. 또한 가상 상자 응용 프로그램에서 오래된 방랑자 및 농가 상자를 제거하십시오.

모든 것이 제대로 되었다면 localhost : 8000192.168.10.10 은 "No input file specified"를 표시해야합니다.

편집 1 : 문제가 Vagrantfile과 관련이 있음을 알았습니다.

rm Vagranfile
vagrant init laravel/homestead
vagrant up

어떻게해서 든 구성에 포트 전달 및 기타 많은 구성이 누락되었습니다.

편집 2 : 또한 "homestead ssh"버그가있는 것으로 나타 났으며이 문제가 다음 명령을 사용하여 로그온하는 경우 공백으로 캡처되는 백 스페이스 문제를 일으킬 수 있음을 알았습니다.

ssh vagrant@localhost -p 2222

답장이 문제를 해결하는 데 도움이되었는지 알려주세요.


답장을 보내 주셔서 감사하지만 작동하지 않았습니다. "홈스테드"를 어떻게 명령으로 사용합니까? 분명히 Windows CMD의 명령이 아닙니다. scripts 폴더에는 homestead.rb 파일이 있습니다. 루비 인터프리터를 실행합니까?
tiagosv

나는 당신이 홈스테드를 제대로 설치하지 않았다고 가정한다 composer global require "laravel/installer=~1.1" . 따라서이 경로를 Git Bash 또는 Windows의 환경 변수에 추가해야합니다. 이를 수행하려면 다음을 수행하십시오. sysdm.cpl창에서> 고급 [탭]> 환경 변수 ...를 클릭하십시오.> 경로 (편집)> 추가를 클릭하십시오 ;%APPDATA%/Composer/vendor/bin. Git Bash를 닫고 다시 시작하면 농가 명령을 사용할 수 있습니다.
reconx86

또한 vagrant box add laravel/homestead홈스테드 박스가 시스템에서 실제로 사용 가능하도록 이 명령을 실행했는지 확인하십시오.
reconx86
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.