这就是为什么我想做:
大多数主机名 -> 由 DNS1 解析。
一些主机名-> 由 DNS2 解析(我不知道 IP 地址只是主机名)。
它应该看起来像创建一个应该由除主 DNS 之外的另一个 DNS 解析的网站的白名单/黑名单。事实上,这就是我想要完成的。
/etc/hosts 是不可能的,因为我可能不知道网站的 IP
谢谢!
这就是为什么我想做:
大多数主机名 -> 由 DNS1 解析。
一些主机名-> 由 DNS2 解析(我不知道 IP 地址只是主机名)。
它应该看起来像创建一个应该由除主 DNS 之外的另一个 DNS 解析的网站的白名单/黑名单。事实上,这就是我想要完成的。
/etc/hosts 是不可能的,因为我可能不知道网站的 IP
谢谢!
我在 Ubuntu 上的 /etc/hosts 文件中添加了以下行:
192.168.0.104 www.tondering.dk www.xzutsfsdet.com
192.168.0.104 是我 LAN 上的 IP 地址。
www.tondering.dk是存在于互联网上的服务器。
www.xzutsfsdet.com是互联网上不存在的服务器。
如果我使用 lynx 或 Chrome 访问www.tondering.dk或www.xzutsfsdet.com,这两个请求都会发送到 192.168.0.104,正如我所料。
但是如果我使用 Firefox,www.xzutsfsdet.com被发送到 192.168.0.104,但www.tondering.dk被发送到外部服务器(好像 /etc/hosts 条目不存在)。
因此,在我看来,Firefox 仅在外部查找失败时才使用 /etc/hosts,而其他程序在执行外部查找之前使用 /etc/hosts。
有什么方法可以让 Firefox 表现得像其他程序一样?
我的操作系统是 Ubuntu 20.04 LTS,我的 Firefox 是 78.0.2 版本。
如果我有多个主机,我想为其添加别名,例如
10.0.0.10 ip_10
10.0.0.11 ip_11
10.0.0.12 ip_12
有没有办法将这些组合成一行?
我试过了
10.0.0. ip
然后尝试用 ping 它,ping ip.10
但它给了ping: unknown host ip.10
.
我也试过10.0.0.* ip.*
我想阻止我的 ubuntu 系统上的一些网站。所以,我在 中添加了一些行/etc/hosts
,它们是
127.0.1.1 www.reddit.com
127.0.1.1 www.facebook.com
这现在成功阻止了该网站,但是当我转到上面提到的 URL 之一时,我想重定向到另一个 URL,我发现您需要将其更改127.0.1.1
为IP of website
使其工作,但我无法转换 URL,例如https: //i.imgur.com/6FxzzCT.png到 IP 地址。
如果有人可以将任何 URL 转换为 IP 地址,那将非常有帮助。
我设法找出了我所缺少的东西,这清楚地表明了如何解决我的问题。事实证明,在 16.04 和 18.04 之间,Ubuntu 和衍生产品从基于 dnsmasq 的东西默认切换到基于 systemd-resolved 的东西,并且 systemd-resolved 比 dnsmasq 更不愿意承受/etc/hosts
.
下面是我试图描述的原始问题,我只是在编辑页面上添加这个关于这里有答案的问题,因为我认为我应该修复标签以更好地反映结果相关组件。
所以,我最近从 xenial (16.04) 转移到了仿生 (18.04),并且我在解决至少我认为有解决方案的问题方面取得了很大的成功。我想我要归结为最后一件事,这不是我希望的那样,我希望有一个解决办法。
在 16.04 中,我曾经有一个很长的主机文件,甚至无法加载已知的恶意站点。它对我来说效果很好,如果有任何问题,我可以检查相关域是否存在,检查它是如何到达那里的,并自行决定是否将其取消列入黑名单。
我试图从带有 16.04 的旧驱动器中迁移我的主机文件,但突然之间什么都加载不出来,所以我不得不恢复。在比较了一下之后,我发现了一个微小的差异(我的新主机文件包括我的计算机主机名的两个版本,一个以“.lan”结尾)并尝试纠正它以查看它是否可以解决问题。没有骰子。
我可以将项目添加到列表中,如果我复制我的域候选列表,我只是不想加载那些被阻止的好,但是当我添加曾经工作的大量列表时,它似乎使 DNS 永远占用并且永远不会解决任何问题. 这是我几天前以同样方式添加的主机列表。
我最好的想法是从哪里开始尝试进一步研究 xenial 和 bionic 之间的网络发生的任何变化(我不得不重新控制我的现代 eth0 名称,因为一些新的东西试图自动-管理它),但我什至花了一些时间才找到成功让我重新控制有线网络的指南,老实说,我什至不确定更改的整个范围是什么。
有没有其他人使用主机文件来阻止一堆域并碰巧知道这里发生了什么?是否有一些设置更改了默认设置并影响主机文件解析,我需要将其设置为旧设置或其他什么?我会对文件本身更加怀疑,但它在 xenial 下工作得很好,这让我相当确定仿生的变化是相关的,而不仅仅是主机文件本身是错误的(或者如果是,它是错误的一种在历史上一直有效的方式,我一直在使用相同的来源)。
我知道我可以使用10.0.2.2
. 但是,我需要的是能够在我的 VirtualBox Edge 浏览器中键入“localhost”,并让它指向我计算机的 localhost。
我已经对文件尝试了几件事host
,但还没有成功。甚至可以做我想做的事吗?
干杯!
我最近安装了dnscrypt-proxy
. 它的配置文件/etc/dnscrypt-proxy/dnscrypt-proxy.toml
有一个我目前正在使用的黑名单部分:
[blacklist]
## Path to the file of blocking rules (absolute, or relative to the same directory as the executable file)
blacklist_file = '/etc/dnscrypt-proxy/CustomIgnores.txt'
我想知道这个选项是否会替换 /etc/hosts 的重定向?还是两者都用?
/etc/hosts 文件甚至属于什么?dnscrypt 的黑名单选项如何工作(我假设它也只是重定向到本地主机)?谢谢。
我试图让其他计算机访问我的本地服务器,但我在本地尝试了自己,即使我自己也无法在本地访问它。
你应该知道的几件事:
通过http://172.26.141.106:5201/访问我的服务器
我可以通过以下两种方式访问我的服务器:
的结果ifconfig | grep inet
inet addr:172.17.0.1 Bcast:0.0.0.0 Mask:255.255.0.0
inet addr:172.26.141.106 Bcast:172.26.141.255 Mask:255.255.255.0
inet6 addr: fe80::f767:cd56:9641:d3a9/64 Scope:Link
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
输出cat /etc/hosts
:
127.0.0.1 localhost.localdomain localhost
127.0.0.1 hearen.pc
127.0.0.1 hearen-OptiPlex-7050
127.0.0.1 staging
127.0.0.1 arthas
172.26.141.106 localhost hearen.pc
$ sudo ufw disable
Firewall stopped and disabled on system startup
$ sudo ufw status
Status: inactive
有什么我错过的方法吗?我只想让其他人通过http://172.26.141.106:5201/访问我的服务器
任何帮助将不胜感激 :)
在@Ed King 的帮助下,我检查了端口,sudo lsof -i -P -n | grep LISTEN | grep 5201
并且只127.0.0.1
被监听了。
在我将 Angular 服务器配置为监听0.0.0.0
.
我已经设置了本地域,例如这样
mydomain.test
每当我 ping 这个域时,我都会收到以下信息
64 bytes from localhost (127.0.0.1): icmp_seq=87 ttl=64 time=0.028 ms
64 bytes from localhost (127.0.0.1): icmp_seq=88 ttl=64 time=0.027 ms
64 bytes from localhost (127.0.0.1): icmp_seq=89 ttl=64 time=0.028 ms
64 bytes from localhost (127.0.0.1): icmp_seq=90 ttl=64 time=0.030 ms
64 bytes from localhost (127.0.0.1): icmp_seq=91 ttl=64 time=0.028 ms
64 bytes from localhost (127.0.0.1): icmp_seq=92 ttl=64 time=0.028 ms`
但是,如果我尝试在 chrome 中访问它,我会得到以下信息:
This site can’t be reached mydomain.test’s server IP address could not be found.
Search Google for mydomain test
ERR_NAME_NOT_RESOLVED
我已经使用以下 shell 脚本来设置所有 虚拟主机管理脚本
我之前安装了 Xubuntu 16.04,它确实识别了我的路由器(番茄)设置的主机名。
例如,我mate
在网络上有一台名称为 的计算机,其静态 IP 为192.168.2.202
,以前我可以这样做:
$ host mate
mate has address 192.168.2.202
但现在我明白了:
$ host mate
Host mate not found: 2(SERVFAIL)
这次我做了一个最小的桌面安装,所以我想知道我是否缺少某个包。
$ cat /var/run/systemd/resolve/resolv.conf:
nameserver 192.168.2.1
$ cat /var/run/NetworkManager/resolv.conf
nameserver 127.0.0.53
$ netstat -antup
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:5000 0.0.0.0:* LISTEN 3421/VBoxHeadless
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 663/systemd-resolve
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 950/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 737/cupsd
tcp6 0 0 :::5900 :::* LISTEN 3421/VBoxHeadless
tcp6 0 0 :::22 :::* LISTEN 950/sshd
tcp6 0 0 ::1:631 :::* LISTEN 737/cupsd
udp 14784 0 0.0.0.0:52712 0.0.0.0:* 2092/VirtualBox
udp 8704 0 0.0.0.0:53789 0.0.0.0:* 2092/VirtualBox
udp 9536 0 0.0.0.0:5353 0.0.0.0:* 730/avahi-daemon: r
udp 19648 0 0.0.0.0:55126 0.0.0.0:* 2092/VirtualBox
udp 8704 0 0.0.0.0:39114 0.0.0.0:* 2092/VirtualBox
udp 13248 0 0.0.0.0:41109 0.0.0.0:* 2092/VirtualBox
udp 0 0 0.0.0.0:57555 0.0.0.0:* 730/avahi-daemon: r
udp 3648 0 0.0.0.0:59213 0.0.0.0:* 2092/VirtualBox
udp 8064 0 0.0.0.0:59519 0.0.0.0:* 2092/VirtualBox
udp 3648 0 0.0.0.0:48795 0.0.0.0:* 2092/VirtualBox
udp 3648 0 0.0.0.0:48900 0.0.0.0:* 2092/VirtualBox
udp 36096 0 127.0.0.53:53 0.0.0.0:* 663/systemd-resolve
udp 37120 0 0.0.0.0:68 0.0.0.0:* 1066/dhclient
udp 15424 0 0.0.0.0:33008 0.0.0.0:* 2092/VirtualBox
udp 3648 0 0.0.0.0:49597 0.0.0.0:* 2092/VirtualBox
udp 14464 0 0.0.0.0:33395 0.0.0.0:* 2092/VirtualBox
udp 0 0 0.0.0.0:631 0.0.0.0:* 828/cups-browsed
udp 19840 0 0.0.0.0:49883 0.0.0.0:* 2092/VirtualBox
udp 14592 0 0.0.0.0:33614 0.0.0.0:* 2092/VirtualBox
udp6 0 0 :::51356 :::* 730/avahi-daemon: r
udp6 49344 0 :::5353 :::* 730/avahi-daemon: r
$ systemd-resolve --status
Global
DNSSEC NTA: 10.in-addr.arpa
16.172.in-addr.arpa
168.192.in-addr.arpa
17.172.in-addr.arpa
18.172.in-addr.arpa
19.172.in-addr.arpa
20.172.in-addr.arpa
21.172.in-addr.arpa
22.172.in-addr.arpa
23.172.in-addr.arpa
24.172.in-addr.arpa
25.172.in-addr.arpa
26.172.in-addr.arpa
27.172.in-addr.arpa
28.172.in-addr.arpa
29.172.in-addr.arpa
30.172.in-addr.arpa
31.172.in-addr.arpa
corp
d.f.ip6.arpa
home
internal
intranet
lan
local
private
test
Link 6 (vboxnet2)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
Link 5 (vboxnet1)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
Link 4 (vboxnet0)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
Link 3 (wlp4s1)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
Link 2 (eno1)
Current Scopes: DNS
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
DNS Servers: 192.168.2.1
我的路由器是 192.168.2.1
使用dig
表明路由器确实正确报告了主机名。
$ dig @192.168.2.1 mate
; <<>> DiG 9.11.3-1ubuntu1.1-Ubuntu <<>> @192.168.2.1 mate
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47046
;; flags: qr aa rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;mate. IN A
;; ANSWER SECTION:
mate. 0 IN A 192.168.2.202
;; Query time: 0 msec
;; SERVER: 192.168.2.1#53(192.168.2.1)
;; WHEN: Mon Jun 18 18:53:26 PDT 2018
;; MSG SIZE rcvd: 38
但是如果我不特别提到路由器的DNS IP,我没有找到它。
$ dig mate
; <<>> DiG 9.11.3-1ubuntu1.1-Ubuntu <<>> mate
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 65394
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;mate. IN A
;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Mon Jun 18 19:06:13 PDT 2018
;; MSG SIZE rcvd: 33
因此,即使它被列出,它似乎也/var/run/systemd/resolve/resolv.conf
没有被使用。我该如何解决?