如何快速更改DNS服务器


23

我经常喜欢使用非网络特定的DNS服务器(例如Google的公共DNS 8.8.8.8)。但是,许多公共Wi-Fi位置在授权过程中不会加载其“服务条款,请单击此处”页面。我想这是因为我的Macbook需要查找他们的网页,但是正在向Google发送DNS请求,由于我尚未获得授权,因此该请求被阻止了。

快速解决方案是从“网络”首选项窗格(网络/高级/ DNS /选择/删除/ clickety /单击/ GAAA)中删除DNS服务器...

...然后在我获得授权后将其重新添加。

因此,我正在寻找一种简单的方法来指定我的DNS服务器。我很想运行一些服务或应用程序,以清除DNS服务器列表(理想情况下不需要我选择任何内容)。然后再次运行它以恢复我的DNS服务器规范。

可以通过一些Applescripting完成吗?还是终端命令(然后可以用Automator包装)?


我会得到类似FastScripts让你无论你的脚本从答案喜欢热键-它在运行的应用程序的情况下运行,并允许键盘快捷键来火的事情,一旦你登录。
bmike

Answers:


19

获取设置:

networksetup -getdnsservers Airport

要更改它们:

networksetup -setdnsservers Airport xx.xx.xx.xx

这些设置是非持久性的,因此您可以清除手动设置,让公共wi-fi DNS做它的事,然后使用-setdnsservers将其设置为您想要的内容,直到下一次。


1
爱这个。我怎么不知道networksetup?我现在包装networksetup -setdnsservers Wi-Fi Empty了一个自动化脚本。效果很好。我喜欢这个解决办法,因为我并不需要记住的关键序列的比较挂接到帕尼罗的WiFi的罕见事件。谢谢!
比尔·纳斯

23

根据Adam Rice的解决方案设置了不同的网络定位之后,您可以使用顶部菜单栏选项“ Apple>位置”在位置之间快速切换。

在此处输入图片说明


1
这很酷!我从来没有过多个位置(从来没有想过我需要它们),所以从来没有在那个菜单中注意到它。谢谢!
比尔·纳斯

20

您可以有多个网络配置,并可以在Mac上在它们之间切换。打开“网络”面板,您将看到顶部有一个弹出菜单(可能说“默认”之类)。假设您以喜欢的方式将此设置设置为家庭使用。将该菜单下拉至“编辑位置...”,双击名称,并给它一个明显的名称,例如“ Home”。

然后在该窗口中创建另一个位置(单击+按钮)并将其命名为Coffee Shop。在该窗口中完成操作,然后从菜单中选择“咖啡店”以使其成为当前菜单。将设置更改为所需的任何设置。

要更改在每种情况下使用的DNS设置,您需要单击底部的“高级”按钮,然后单击“ DNS”选项卡。

一旦设置了这两个位置,以后就可以在Network prefpane中在它们之间进行切换。我认为有一些独立的应用程序可以使它们之间的切换变得更加容易(甚至可以根据它们检测到的网络自动进行切换),但是我从来没有玩过它们。


4

Launchbar允许您从预定义的位置中进行选择-我有两个仅通过设置DNS有所不同。

在此处输入图片说明

因此,我将Control-Space作为我的热键,因此此键序列可切换OpenDNS而不是DHCP提供的DNS:

^+ SpaceLOCReturnReturn

在此处输入图片说明

如果您有两个以上,则向下箭头键将在您所有的位置之间循环。正如我在上面的评论中所述-FastScripts允许您将一个快捷键序列分配给您希望从其他答案中选择的任何脚本-它在正在运行的应用程序的上下文中运行,并且如果您需要在应用程序中定义的快捷键少于10个,则它是免费的。

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.