标签: networking

如何在 Bash 脚本中将主机名解析为 IP 地址?

在 Bash 脚本中将主机名解析为 IP 地址的最简洁方法是什么?我正在使用Arch Linux

linux networking bash dns

514
推荐指数
18
解决办法
73万
查看次数

反向 SSH 隧道如何工作?

据我了解,防火墙(假设默认设置)拒绝所有没有先前对应的传出流量的传入流量。

基于Reversing an ssh connectionSSH Tunneling Made Easy,反向 SSH 隧道可用于绕过烦人的防火墙限制。

我想在远程机器上执行 shell 命令。远程机器有自己的防火墙,并在附加防火墙(路由器)后面。它有一个像 192.168.1.126(或类似的东西)这样的 IP 地址。我不在防火墙后面,我知道从 Internet 上看到的远程机器的 IP 地址(不是 192.168.1.126 地址)。此外,我可以要求某人ssh (something)首先在远程机器上以 root身份执行。

谁能一步一步地向我解释反向 SSH 隧道如何绕过防火墙(本地和远程机器的防火墙以及它们之间的附加防火墙)?

开关 ( -R, -f, -L, -N)的作用是什么?

networking ssh firewall remote-management ssh-tunneling

432
推荐指数
4
解决办法
30万
查看次数

我使用的是什么 DNS 服务器?

如何检查我使用的是哪个 DNS 服务器(在 Linux 中)?我正在使用网络管理器和到我大学 LAN 的有线连接。(我试图找出为什么我的域没有得到解析)

networking dns

340
推荐指数
10
解决办法
92万
查看次数

当 resolv.conf 被覆盖时如何设置我的 DNS?

我在网上看到的大部分信息都说要编辑/etc/resolv.conf,但我在那里所做的任何更改都会被覆盖。

$ cat /etc/resolv.conf 
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- 
#     YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1
Run Code Online (Sandbox Code Playgroud)

似乎 127.0.1.1 是dnsmasq. 该dnsmasq文件说来编辑/etc/resolv.conf。我试图把自定义的域名服务器中/etc/resolv.conf.d/base,但在变化没露面/etc/resolv.conf后运行sudo resolvconf -u

仅供参考,我不想在每个连接的基础上更改 DNS,我想设置默认 DNS 设置以在未另行指定时用于所有连接。

更新:

我自己回答了这个问题:https : //unix.stackexchange.com/a/163506/67024

我认为这是最好的解决方案,因为:

  1. 有用。
  2. 它需要最少的更改和
  3. 它仍然与 dnsmasq 的 DNS 缓存一起工作,而不是绕过它。

linux networking dns debian dnsmasq

339
推荐指数
8
解决办法
102万
查看次数

找不到 ifconfig 命令

我刚刚在我的 mac (osx10.9.3 + virtualbox) 上安装了 CentOS7 作为虚拟机。运行ifconfig返回命令未找到。还运行sudo /sbin/ifconfig返回命令未找到。我是根。的输出 echo $PATH如下。

/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/robbert/.local/bin:/home/robbert/bin
Run Code Online (Sandbox Code Playgroud)

我的路径正常吗?如果没有,我该如何更改它?

另外,我还没有在虚拟机上连接互联网,也许这是一个因素。

networking centos command ifconfig

183
推荐指数
2
解决办法
64万
查看次数

/etc/network/interfaces 语法的详细解释?

我了解如何使用的基本概念/etc/network/interfaces,但我在网上找到的都是示例,一个又一个示例,我可以从中复制粘贴。我想念的是对语法的解释,对命令含义的解释以及命令所需的顺序。我想了解一下,因为大多数时候复制粘贴是不够的,因为我不是在新机器上工作,所以我不能只覆盖现有配置,因为它会破坏很多东西。man interfaces不是很有帮助,因为它写得很复杂。

实例的问题我:是什么inetiface行意味着什么(我甚至不能找到它的联机帮助页),是什么manualiface行意味着什么(很多例子使用它,但根据手册页,它需要一个额外的配置文件,然后,这示例不存在),我什么时候使用或需要它们?什么时候不?当我创建一个网桥时,接口到底发生了什么?

networking bridge interface

165
推荐指数
1
解决办法
20万
查看次数

如何使用主机名从 LAN 访问机器

以下是我想使用其主机名访问的机器的详细信息:

$ hostname
hostname
$ cat /etc/hosts
127.0.0.1   localhost
127.0.1.1   hostname.company.local  hostname
Run Code Online (Sandbox Code Playgroud)

这是默认的 Debian 6 (Squeeze) 安装,所以我还没有摆弄任何东西。

这是我从一台试图访问上述机器的机器(运行 Debian Unstable)获得的信息:

$ ping hostname
ping: unknown host hostname
$ ping hostname.company.local
ping: unknown host hostname.company.local
$ cat /etc/resolv.conf
nameserver 192.168.2.21
nameserver 192.168.2.51
search company.local
Run Code Online (Sandbox Code Playgroud)

networking

149
推荐指数
4
解决办法
31万
查看次数

下载时限制 wget 或 curl 的下载速度

是否可以节流(限制)wget或的下载速度curl

下载时是否可以更改节流值?

networking download wget curl

128
推荐指数
3
解决办法
9万
查看次数

在两台计算机之间发送大量数据的最快方法是什么?

这是我经常遇到的情况:

  • 我有一个内部有 320GB 硬盘驱动器和 16GB 内存的源服务器(此处提供确切规格,但由于这是我在其他机器上也经常遇到的问题,我希望答案适用于任何“合理”的 Linux 机器)
  • 我有一个有几 TB 硬盘空间的备份服务器(这里有确切的规格,请参阅上面的免责声明)

我想将 320GB 的数据从源服务器传输到目标服务器(特别是来自 的数据/dev/sda)。

  1. 两台计算机在物理上彼此相邻,因此我可以在它们之间铺设电缆。
  2. 我在局域网上,我使用的是新路由器,这意味着我的网络速度“理想情况下”应该是 1000Mbit,对吧?
  3. 安全不是问题。我在本地网络上,我信任网络上的所有机器,包括路由器。
  4. (可选)我不一定需要数据的签名校验和,但应该检测基本错误检查(例如丢弃的数据包或驱动器变得不可读),而不仅仅是消失在输出中。

我在网上搜索了这个问题,并测试了几个命令。出现频率最高的就是这个:

ssh user@192.168.1.100 'dd bs=16M if=/dev/sda | gzip' > backup_sda.gz
Run Code Online (Sandbox Code Playgroud)

这个命令被证明太慢了(它运行了一个小时,只得到了大约 80GB 的数据)。1GB 的测试数据包大约需要 1 分 22 秒,最终在未压缩时速度是原来的两倍。结果也可能因传输的文件小于源系统上的 RAM 量而产生偏差。

此外(这是在 1GB 测试片上测试的),如果我使用gzip命令和dd; 与直接通过管道传输相比,在目标上提取的结果文件具有不同的校验和。我仍在试图弄清楚为什么会发生这种情况。

networking backup file-transfer dd

117
推荐指数
7
解决办法
4万
查看次数

如何监控来自我的机器的所有传出请求/连接?

我的机器是一台服务器,所以我想忽略与我的服务器建立的连接(例如,当有人访问我的网站时)。我希望看到只有连接/请求被我的服务器到其他地方做。

我如何看到那些传出连接?

编辑:我是这些类型的新手。我想要做的只是看看除了我的网络应用程序的数据之外,是否从我的服务器发送了任何内容。例如,如果有人访问我的网站,那么显然我的服务器会将数据发送到客户端的浏览器。但是假设我的网络应用程序框架中的某处也有代码将统计数据发送到我不知道的其他地方。我想看看我的服务器将数据发送到的那些地方,如果有的话。这可能不太可能,但假设您决定使用不是您编写的 php 或 nodejs 框架:它可能会在某处发送某种类型的数据。如果是这样,这就是我希望看到的。

command-line networking security shell-script

114
推荐指数
5
解决办法
39万
查看次数