如何通过机器名称而不是IP到达本地计算机?


20

开发人员在此处制作了移动应用的原型,这对移动来说有些新:

  • 我的主要笔记本电脑上正在运行一个带有机器名的简单HTTP服务(当前)latitude
  • 另一台名为vaio共享同一WiFi网络的笔记本电脑可以通过以下方式访问该服务http://latitude:8080:换句话说,它可以latitude以某种方式轻松地解析(当前)IP 192.168.xy(或当时具有的任何动态IP)。
  • 现在,连接到同一WiFi网络的HTC Android手机可以访问IP地址,latitude因此在其浏览器中打开就http://192.168.x.y:8080可以使用。
  • 但是我也想在这里使用机器名称,就像当我从中访问HTTP服务时一样vaio,只需键入http://latitude:8080并让电话解析当前的动态IP latitude。这是行不通的,只能获取标准的浏览器错误页面:“ Webpage not available”

我需要调整Android中的一些DNS设置吗?尚未从设置中找到任何东西,众所周知,这样的问题也很难用谷歌搜索...

One V配备Android 4.0,One M7配备Android 4.2,以防万一。

(请注意,即使Android未通过USB连接到我的计算机且未充当WiFi热点,这也应能正常工作-显然,因为它反而消耗了我的主要WiFi网络)。

Answers:


4

无论您是否通过WiFi连接到本地网络以及是否正在使用DHCP,Android似乎总是会使用Google的服务器覆盖其DNS条目。只要您有自己的DNS运行(许多路由器已经提供了该功能),它就有些隐藏,但易于更改。

为此,请转到“设置”中的WiFi网络列表,长按WiFi条目,然后选择进行编辑。激活高级设置。现在,您可以编辑DNS条目。只需将第一个条目替换为您自己的DNS服务器的IP,然后保留第二个条目(DNS 2)即可回退。

现在,如果您自己的DNS可以解析本地网络的计算机,则您应该能够使用它们的主机名与它们联系。没有root用户,也不需要编辑hosts文件(如果您没有运行自己的DNS服务,则可以选择这种方法)。与我和我的网络在这里表现出色;)


谢谢!这很奇怪,当我这样做时,我的路由器(网关)也已经输入为DNS1(Google或8.8.4.4作为DNS2)。好吧,我将使用这些默认值并应用它们,在Windows计算机上启用了NetBIOS和SMB,但仍然没有名称解析...
metaleap 2013年

2
我没有Windows计划。就我而言,这是一个基于Linux的环境,并且路由器(AVM Fritz!Box)运行着一个名称服务器。工作顺利。
伊兹

这最多(即使是偶数)仅适用于旧版本的Android。我的第一个dns是我的本地dns,后备是google的8.8.8.8。与看着它getprop | grep -i dns又见android.stackexchange.com/a/32278/15713
CE4

Firefox的行为有所不同,并且没有显示此行为,我猜这是由Chrome的多功能框(组合搜索/ URI输入框)实现的
ce4 2013年

Firefox不使用自己的DNS服务器(至少我想知道是否)。通常所有软件都会向系统询问该信息,因此浏览器在这里应该无关紧要。@ ce4:是的,这就是我在设备上手动配置它的方式:同样的回退,但是主要的我必须手动将4.4.4.4更改为本地DNS服务器。我知道我的DHCP服务器发送了该信息,但是没有看到一个Android设备兑现该信息。
伊兹

1

当我想要机器名称而不是IP时,我编辑HOSTS文件。尝试在其中添加设备及其IP地址。谷歌搜索您的操作系统的主机文件应该很容易。


2
仅当便携式计算机的IP地址始终保持静态/不变时,编辑HOSTS才有用。情况并非如此,因为我正在忙碌中,使用不同的WiFi网络,动态IP地址。另外编辑HOSTS需要一个根深蒂固的Android,但我需要它保持无根,基本上untweaked“正常消费者手机”条件下的测试..
metaleap

0

/etc/hosts使用ES Explorer 在设备的主机文件()文件的末尾添加两行(需要有根设备)。

模板:

your_host_machine's_IP_address  domain_name   

的示例domain_name可以是localhost

例:

::1  domain_name 

localhost在URL栏而不是IP地址中输入时效果很好。


我更正了格式\etc\hosts/etc/hosts并进行了一些更改。我试图不改变意图,但使它看起来更好。让我知道我是否在某个地方搞砸了。
Firelord

0

以我为例,在Windows 10上,暂时关闭Windows防火墙可以进行冲浪http://latitude:8080

从长远来看,我创建了一个规则,以使这些连接通过防火墙...

  • {Windows}>“开始”>“防火墙”>具有高级安全性的Windows Defender防火墙。入站规则>新规则...

    • 一般
      • 名称:来自局域网的TCP Web连接
      • 如果安全则允许连接...
      • 选择:“如果连接经过身份验证和完整性保护,则允许连接”
    • 协议和端口
      • 协议类型:TCP
      • 本地端口:80、880
    • 高级
      • 指定要应用此规则的配置文件:专用
  • {Android}。使用Firefox或Chrome(而不是Dolphin)进行测试

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.