小编Cra*_*cks的帖子

dnsmasq dns 域名服务器优先级参数 - 严格顺序

我有一个指定两个 DNS 名称服务器的设置。一个是本地的,另一个是外部的。本地的是pihole,它本身经过 url 过滤后将请求转发到外部。外部设置是为了防止pihole设备软件或硬件出现故障。

内部响应时间约为20 ms,外部响应时间约为2 ms 尽管pihole被列为外部名称服务器之前的名称服务器,但dnsmasq默认情况下会测试计时响应并使用更快的名称服务器。

然而, dnsmasq确实提供了一个参数strict-order,该参数应按照严格的列出顺序使用名称服务器,因此在这种情况下,仅当 pihole 失败”时才应使用外部名称服务器。

在实践中,使用该参数strict-order并不会像希望的那样工作,并且外部名称服务器仍然获胜。dnsmasq手册页没有详细介绍“失败”的定义。

我正在寻找可能解决此问题的其他参数设置。

作为最后的手段,我将使用外部程序来检测pihole工作顺序,并相应地操作dnsmasq名称服务器设置。但这不是首选解决方案。

dns dnsmasq raspberry-pi

5
推荐指数
2
解决办法
4476
查看次数

管道生产者如何告诉管道消费者它已到达“文件结尾”?”(未命名管道,而不是命名管道)

我有一个应用程序,它要求生产者将文件名发送给消费者,并让生产者在发送最后一个文件名并到达文件末尾时向消费者指示。

为简单起见,在以下示例中, 使用和演示生产者,而使用 演示消费者。我试图推断“此处文件”方法但没有成功,用于向生产者包装器(如果存在此类东西)指示要查找的内容作为文件结尾的指示。如果它工作应该从输出中过滤。echoprintfcat<<EOFcatEOF

例 1)

输入

{
echo "Hello World!" 
printf '\x04' 
echo "EOF"
} <<EOF |\
cat
Run Code Online (Sandbox Code Playgroud)

输出

bash: warning: here-document at line 146 delimited by end-of-file (wanted `EOF')
Hello World!
EOF
Run Code Online (Sandbox Code Playgroud)

例 2)

输入

{ 
echo "Hello World!" 
printf '\x04' 
echo "EOF"
} |\
cat <<EOF
Run Code Online (Sandbox Code Playgroud)

输出

bash: warning: here-document at line 153 delimited by …
Run Code Online (Sandbox Code Playgroud)

pipe here-document here-string

3
推荐指数
1
解决办法
3276
查看次数

使用 rng-tools 没有显着增加“熵创造”的蜗牛率

我的系统(Linux 4.13.0-38-generic,16.04.1-Ubuntu,Intel® Celeron(R) CPU G3930 @ 2.90GHz × 2,主磁盘是 SSD)上的“熵创建”速度是不切实际的慢很多每秒小于 1 位。

注意:我用这个命令判断熵产生的速率:

watch -n1 cat /proc/sys/kernel/random/entropy_avail
Run Code Online (Sandbox Code Playgroud)

另一方面,底层 Linux CSPRNG 正在以每秒 187 Mb 的良好速度生成数据:

$ dd if=/dev/urandom of=/dev/null bs=1M count=1024 iflag=fullblock  
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 5.74347 s, 187 MB/s
Run Code Online (Sandbox Code Playgroud)

我安装了rng-tools. 它正在/dev/hwrng按预期工作和阅读:

% systemctl status rng-tools
? rng-tools.service
   Loaded: loaded (/etc/init.d/rng-tools; bad; vendor preset: enabled)
   Active: active (running) since Sat 2018-04-28 13:17:17 PDT; 33s ago
     Docs: man:systemd-sysv-generator(8)
  Process: …
Run Code Online (Sandbox Code Playgroud)

random linux-kernel

3
推荐指数
1
解决办法
419
查看次数