我在 eth0 上添加了一个标记的 VLAN:
#ip link add link eth0 name eth0.20 type vlan id 20
Run Code Online (Sandbox Code Playgroud)
这导致:
#ip link
2: eth0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 9c:c7:a6:95:65:1c brd ff:ff:ff:ff:ff:ff
....
12: eth0.20@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 9c:c7:a6:95:65:1c brd ff:ff:ff:ff:ff:ff
#ip -d link show eth0.20
70: eth0.20@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 9c:c7:a6:95:65:1c brd ff:ff:ff:ff:ff:ff
vlan id 20 <REORDER_HDR>
#cat /proc/net/vlan/config
VLAN Dev name | VLAN ID
Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD
eth0.234 …Run Code Online (Sandbox Code Playgroud) 我尝试使用以下方法将整个 IPv6 (/64) 块添加到接口
ip route add local 2001:41d0:2:ad64::/64 dev lo
Run Code Online (Sandbox Code Playgroud)
像描述在这里我的Debian服务器上,但我似乎失去了一些东西。
例如2001:41d0:2:ad64::fe,如果我在本地ping一切正常,但如果我从远程机器尝试,则它不起作用。然后我尝试在 eth0 上添加路由:
ip route add local 2001::41d0:2:ad64::/64 dev eth0
Run Code Online (Sandbox Code Playgroud)
现在我什至无法在本地 ping 任何示例地址!
我有点迷茫,因为我似乎错过了一些东西,但我在这里找不到答案。
简而言之:我想2001:41d0:2:ad64::/64绑定到 eth0,以便可以从我机器上的 Internet 访问此块包含的每个 IP。
我希望那里有人能指出我正确的方法。提前致谢。
ISP 提供的指南确实要求我将每个 IPv6 显式添加到接口中。我希望它是隐含的。
使用显式 IP 地址绑定的工作配置
/etc/network/interfaces:
auto eth0
iface eth0 inet static
address my.ip.v4
netmask 255.255.255.0
network my.network.address.ip
broadcast my.broadcast.address.ip
gateway my.gateway.ip
iface eth0 inet6 static
address 2001:41d0:2:ad64::fe
netmask 64
gateway 2001:41d0:2:adff:ff:ff:ff:ff
up ip addr add 2001:41d0:2:ad64::1/64 dev …Run Code Online (Sandbox Code Playgroud) net.core.rmem_max 和 net.ipv4.tcp_rmem 的第三个值有什么区别?哪个对 tcp 连接具有更高的优先级?
对于以下两个示例,tcp 连接的最大缓冲区是多少?
Case 1:
sysctl -w net.core.rmem_max=7388608
sysctl -w net.ipv4.tcp_rmem='4096 87380 8388608'
Case 2:
sysctl -w net.core.rmem_max=8388608
sysctl -w net.ipv4.tcp_rmem='4096 87380 7388608'
Run Code Online (Sandbox Code Playgroud) 好的,...这可能已经得到了回答,不幸的是,我没有找到任何看起来像是解决方案的东西。
我看过这些页面,他们有一些有用的信息,但不是完整的解决方案:
我将使用 Debian 8、Ubuntu 16.04 Desktop 或 Ubuntu 16.04 Server(老实说,很可能是 Debian)。
好的,所以我将安装三个网卡,两个千兆位和板载 100 mbps LAN 连接。ISP 连接将通过两个网卡上的 PPPoE 身份验证使用千兆 LAN 卡(如果这甚至可能,否则我将在 DSL 调制解调器上使用非桥接模式)。两个网络都将分配一个静态 IP。目前(这将改变)主要连接有一组五个。我需要将来自这些 IP 地址之一的流量路由到网络上的正确服务器。
以下是我的问题:
请温柔点,这是我第一次尝试过这样的事情:)。
编辑 1
忘记添加网络拓扑:
编辑 2
刚刚意识到一些事情......为了进行 PPPoE 身份验证,我将不得不强制对特定接口上的凭据进行身份验证。这是怎么做的?
我在这里发布了这个问题:
创建具有两个 Internet 连接和一个 LAN 连接的多宿主 linux 负载平衡器
更新 1
仍然无法让多跳循环工作。我尝试按照以下网站中列出的步骤进行操作,但没有成功:
最新版本的 Ubuntu 和 Debian (stretch) 带来了新的网络接口命名方案。
现在,当从使用旧样式名称(如“eth0”)的系统进行更新时,我想在启动之前知道新名称是什么。
我怎样才能做到这一点?是否有一个神奇的“systemd”调用,我可以用来在启动前编辑 /etc/network/interface(随后失去网络连接)?
我从几天前就注意到出现了相同的重复消息,我可以肯定地说,在那段时间没有故意更改(安装/卸载)任何内容。
这是/var/log/kern.log消息的示例:
Mar 30 06:32:45 aurora kernel: [566322.867110] e1000e: eth0 NIC Link is Down
Mar 30 06:32:47 aurora kernel: [566325.313634] e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
Mar 30 06:32:59 aurora kernel: [566337.632930] e1000e: eth0 NIC Link is Down
Mar 30 06:33:18 aurora kernel: [566356.543664] e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None
Mar 30 11:05:47 aurora kernel: [582689.779752] e1000e: eth0 NIC Link is Down
Mar 30 …Run Code Online (Sandbox Code Playgroud) 摘要:我想连接到我的 VPN 并访问某些服务器,但对于所有其他流量,我想使用我的常规网络。
我在 VPS 上设置了 OpenVPN 服务器,我的server.conf文件如下所示:
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key # This file should be kept secret
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
keepalive 10 120
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
log /var/log/openvpn.log
verb 4
push "route 10.132.0.0 255.255.0.0"
Run Code Online (Sandbox Code Playgroud)
我使用以下.ovpn文件来设置 VPN 连接:
client
dev tun
proto udp
remote <my.vpn.server.com> 1194
nobind
user nobody
group nogroup
persist-key
persist-tun
remote-cert-tls server
comp-lzo
verb …Run Code Online (Sandbox Code Playgroud) 我需要能够为多个网络提供特定的 dns 服务器,我想知道如何正确更新我的/etc/resolv.conf:
假设我有一个主要的 vpn,我通过它路由我所有的流量和 DNS 查询。但是我知道我有另一个 VPN 可以让我对网络进行特定访问,该 VPN 也作为 DNS 服务器,但它只服务于特定域,可以说:“mydomain.local”
我构建了以下resolv.conf:
nameserver 10.8.0.1
search mydomain.local
nameserver 10.250.0.2
Run Code Online (Sandbox Code Playgroud)
但是无论如何,DNS 查询都会继续到第一个域服务器,更改顺序无关紧要。
任何人都可以给我任何建议吗?
domain-name-system linux resolv.conf openvpn linux-networking
我今天有一个谜团要告诉你。我们在 Azure 上运行一个基于 CoreOS (2023.5.0 / Linux 4.19.25-coreos) 的小型三节点 Elasticsearch 集群。Elasticsearch 在主机网络模式下的 docker 容器内运行。在几乎完全免维护运行一年多之后,我们看到机器进入了一种非常有趣的状态。
此问题已通过修复Linux 内核中的驱动程序解决。请参阅下面的答案。
基本上,受影响的机器和其他两个节点之间的网络连接失效。它们都在同一个虚拟网络和同一个子网中,通常可以与其他人通信。仍然可以从其他子网(我可以通过 ssh 进入)和不同的对等虚拟网络访问受影响的节点。这台机器也有(非常不稳定的)互联网连接,但大多数请求只是超时。
我们观察到,在受影响的节点上,报告的“使用的套接字”数量/proc/net/sockstat非常高(大约 4.5k 而不是健康节点上的大约 300)。监控显示,这个数字从节点变得不可用的那一刻起迅速上升。
有趣的是,我们似乎无法识别这些使用过的套接字的来源:
# cat /proc/net/sockstat
sockets: used 4566
TCP: inuse 2 orphan 0 tw 2 alloc 98 mem 4
UDP: inuse 1 mem 0
UDPLITE: inuse 0
RAW: inuse 0
FRAG: inuse 0 memory 0
# cat /proc/net/sockstat6
TCP6: inuse 98
UDP6: inuse 1
UDPLITE6: inuse 0
RAW6: inuse 1
FRAG6: inuse …Run Code Online (Sandbox Code Playgroud) tcpdump linux-networking linux-kernel coreos azure-networking
我不确定这是否只是特定于我的发行版软件包,还是 vbox 限制。因此,任何帮助将不胜感激。
好的,所以我有一个虚拟机网络,其中一个虚拟机充当“内部”网络中其他虚拟机的 NAT。其中一台虚拟机正在运行 DHCP 和 TFTP 服务器,我只需要从该服务器启动其他虚拟机,但是从网络启动时我启动的所有虚拟机是“致命:无法从启动介质读取!系统”停止”。
这有点令人沮丧,因为 vbox 非常易于使用和试验,但我无法解决这个错误。帮助 ?
linux-networking ×10
networking ×3
dhcp ×2
linux ×2
linux-kernel ×2
openvpn ×2
ubuntu ×2
coreos ×1
ethernet ×1
iptables ×1
ipv6 ×1
nat ×1
nic ×1
pxe-boot ×1
resolv.conf ×1
systemd ×1
tcp ×1
tcpdump ×1
ubuntu-16.04 ×1
virtualbox ×1
vlan ×1