컴퓨터에서 웹 사이트를 운영하고 있는데 Nexus 7 태블릿에서 웹 사이트를 테스트하고 싶습니다. 즉, 로컬 WiFi LAN을 통해. IP 주소를 입력하면 연결되지만 이름이 지정된 가상 호스팅을 사용하고 있기 때문에 잘못된 웹 사이트가 표시됩니다.
그래서 내가하고 싶은 mysite.local
것은 Nexus에서 Chrome / Firefox에 입력하고 해당 10.1.2.3
주소 로 변환 하거나 로컬 IP 주소 로 변환 한 다음 10.1.2.3
서버를 mysite.local
호스트로 요청하여 요청하는 것입니다.
내 질문 : Android 4.x 태블릿에 /etc/hosts
편집 할 수 있는 파일이나 동등한 파일이 있습니까? (태블릿 등을 뿌리지 않아도됩니다.)
내 Linux 컴퓨터에서 /etc/hosts
다음에 항목을 추가하여이 작업을 수행합니다 .
10.1.2.3 mysite.local
(또는 Windows\System32\drivers\etc\hosts
Windows 시스템에서도 동일하게 수행됩니다.)
BTW, 이것은 IP 주소 (예 : / etc / hosts equiv.?)에 대한 호스트 이름을 수동으로 설정하는 것과 중복 되지만 그 질문은 안드로이드 2.2에 대한 것이 었습니다. (대체 아이디어 중 하나는 로컬 라우터에 DNS를 구성하는 것이 제안되었지만 라우터가 로컬에서 DNS를 수행하지 않으므로 해당 옵션이 없다는 것을 알 수있는 한 내 DNS 서버를 설정하여이를 수행 할 수 있지만 그것은 큰 직업 해결책처럼 느껴집니다.)
답변
읽기 전용 파일 시스템에있는 호스트 파일은 Android에서 간단히 편집 할 수 없습니다 /system/etc/hosts
.
대안은 다음과 같습니다.
- 로컬 네트워크에서 DNSMasq와 같은 DNS 서버를 사용하여 “중앙”관리
- 위에서 설명한대로 “root powers”를 사용하여 시스템 파일을 강제 편집하십시오.
- 이를 사용하기 위해 Android 기기에 “로컬 DNS 서버”를 설치하십시오 (예 : DNS 서버)
답변
lzzy에서 언급했듯이 DNSMasq 서버를 사용 하여이를 달성 할 수 있습니다 . 그러나 Chrome은 자체 DNS 확인 프로세스를 사용하므로이 방법이 작동하지 않을 수 있습니다.
서버를 시작하려면 다음 명령을 사용하십시오.
sudo /usr/local/sbin/dnsmasq -d \
--no-hosts \
--no-resolv \
--conf-file=/dev/null \
--server=8.8.8.8 --server=8.8.4.4 \
--address=/example.com/192.168.0.101
sudo
포트 53에서 바인딩하는 데 필요-d
포 그라운드에서 서버 시작--no-hosts
로컬 호스트 파일을 사용하지 마십시오--conf-file=/dev/null
구성 파일을 사용하지 마십시오--server=8.8.8.8 --server=8.8.4.4
업스트림 서버 주소 (이 예에서는 Google DNS)--address=/example.com/192.168.0.101
무시할 호스트. 이 줄에 호스트를 추가해야합니다. 여러 호스트를 추가 할 수도 있습니다.
그런 다음 장치에서 DNS 서버를 변경하십시오. 이것은 DNS Changer 앱을 사용하여 쉽게 수행 할 수 있습니다 .
이 단계 후에이 호스트에 대한 요청이 사용자의 주소로 전송되어야합니다.
답변
호스트에서 IP 로의 매핑 을 정의하는 가장 간단한 방법 은 hosts
파일입니다. 대부분 DNS 확인자가 해당 파일을 사용합니다 . 그러나 다른 답변에서 언급했듯이 /etc/hosts
Android 기기를 루팅하지 않으면 편집 할 수 없습니다. 가상 호스팅으로 인해 IP 주소로 웹 서버에 액세스해도 작동하지 않습니다. 루팅되지 않은 기기에서 사용할 수있는 몇 가지 옵션은 다음과 같습니다.
hosts
구성된 업스트림 DNS 서버에 쿼리하기 전에 DNS 트래픽을 가로 채고 사용자 지정 파일을 찾는 VPN 앱을 사용하십시오 .- DNS 서버를 실행하십시오. 특정 이름에 대해 사전 정의 된 IP 주소를 반환하도록 구성 할 수 있습니다. 예를 들어 사용하는 경우
dnsmasq
, 추가address=/mysite.local/10.1.2.3
로 “dnsmasq.conf” . 또는에dnscrypt-proxy
추가mysite.local 10.1.2.3
로 “클로킹 – 규칙 .txt” . - 프록시 또는 VPN을 사용하도록 전화기를 구성한 다음 프록시 서버의 파일에 항목
10.1.2.3 mysite.local
을 추가하거나 VPNhosts
서버에서 로컬 DNS 서버를 실행하십시오. - 부트 로더를 잠금 해제 할 수
hosts
있으면 사용자 지정 복구에서 파일을 편집 하십시오.
자세한 내용은 루팅하지 않고 항상 도메인 이름을 고정 IP로 확인하는 방법을 참조하십시오.
관련 :