标签: routing

路由协议、距离向量与链路状态

我试图找出两种路由协议方法之间的差异(优点/缺点),我会非常乐意提供任何帮助、建议和解释。就我而言,距离向量似乎更静态,更基于本地路由,因为它不知道网络状态,而链路状态更了解当前状态,因此在距离向量上使用它似乎更自然,但我觉得我错过了什么。我很高兴在这里了解更多方面和我在选择其中一个时必须考虑的不同问题。

networking routing ip test

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

如果一条路径出现故障,让 linux 更改默认路由?

我正在配置网关/路由器 linux 框。它正在执行伪装/NA​​T。主要的 Internet 接口是 3G 调制解调器,但如果出现故障,我希望它自动尝试不同的接口。我该怎么做呢?路由规则能否自动满足这一点,或者我应该让它定期检查 3G 连接是否正常,如果没有,请尝试另一个?

干杯,

胜利者

routing linux-networking

8
推荐指数
1
解决办法
2万
查看次数

IPv6 仅在 ping 到路由盒后工作

情况:

我们的网络中有一个仅 ipv4 的路由器,每台计算机都连接到它(wifi 或电缆)。一台带有 ipv4 和 ipv6 的服务器也连接到这个路由器。该服务器已配置了用于 6to4 隧道和 radvd 的隧道代理。网络中的客户端具有正确的前缀,可以通过 ipv6 互相 ping 通。但是在他们第一次 ping 服务器(有隧道的那个)之前,他们不能 ping 到互联网。我在某处发现这是一个 icmp 问题,但我找不到解决方案。

是路由器只有ipv4的问题吗?

  • 服务器和客户端运行 linux
  • 路由器在没有 ipv6 支持的情况下运行 dd-wrt ​​:(

平尝试:

Standa@standa-laptop:~$ ping6 ipv6.google.com
PING ipv6.google.com(2a00:1450:8007::69) 56 个数据字节
^C
--- ipv6.google.com ping 统计 ---
发送29个数据包,接收0个,100%丢包,时间28223ms

Standa@standa-laptop:~$ ping6 2001:470:XXXX:XXXX:21c:c0ff:fe2b:6478
PING 2001:470:XXXX:XXXX:21c:c0ff:fe2b:6478(2001:470:XXXX:XXXX:21c:c0ff:fe2b:6478) 56 个数据字节
64 字节来自 2001:470:XXXX:XXXX:21c:c0ff:fe2b:6478: icmp_seq=1 ttl=64 time=3.55 ms
64 字节来自 2001:470:XXXX:XXXX:21c:c0ff:fe2b:6478: icmp_seq=2 ttl=64 time=0.311 ms
64 字节来自 2001:470:XXXX:XXXX:21c:c0ff:fe2b:6478: icmp_seq=3 ttl=64 time=0.269 ms
64 字节来自 2001:470:XXXX:XXXX:21c:c0ff:fe2b:6478: icmp_seq=4 ttl=64 time=0.292 …

linux routing ipv6

8
推荐指数
1
解决办法
2896
查看次数

有没有办法停止通过 VPN 中继网络流量?

我最近一直在试验 VPN,我设法让它在 W7 PC 上运行。但问题是,只要有人连接到我的 PC,来自他们 PC 的互联网流量就会通过我的 PC 路由,或者看起来是这样。

有没有办法离开 VPN(能够连接到我的内部网络),同时不通过它路由所有互联网流量?

vpn routing

8
推荐指数
1
解决办法
2万
查看次数

无法在非默认接口上 ping 多宿主 Linux 机器

我有一个多宿主 Ubuntu 服务器,其中包含一组接口:

eth2: 10.10.0.131/24
eth3: 10.20.0.2/24
Run Code Online (Sandbox Code Playgroud)

默认接口为 eth2,网关为 10.10.0.1。下面是路由表的样子:

root@c220-1:~# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         10.10.0.1       0.0.0.0         UG        0 0          0 eth2
10.10.0.0       0.0.0.0         255.255.255.0   U         0 0          0 eth2
10.20.0.0       0.0.0.0         255.255.255.0   U         0 0          0 eth3
10.30.0.0       0.0.0.0         255.255.255.0   U         0 0          0 eth0
10.40.0.0       0.0.0.0         255.255.0.0     U         0 0          0 eth1
Run Code Online (Sandbox Code Playgroud)

从单独的网络 ( 192.168.3.5/24) 我可以通过 eth2 接口(具有默认网关的接口)访问这台机器,但不能通过 eth3 接口访问。我可以毫无问题地从同一网络 (10.20.0.1) 上的路由器 ping eth3 接口。

如果我从 …

networking linux routing icmp

8
推荐指数
1
解决办法
2万
查看次数

Windows VPN 服务器可以与 VPN 客户端通信,但不会将数据包从其本地网络发送到 VPN 客户端

我想使用使用拆分隧道和子网外寻址的 SSTP VPN 配置 Windows Server 2012 及其 Windows 7 和 Windows 8 VPN 客户端,但我遇到了一个问题:RRAS 服务器不会向 VPN 发送数据包来自除自身之外的任何机器的客户端。

我的 VPN 服务器在 Amazon 的“虚拟私有云”上运行,因此它只有一个 NIC,其 IP 地址位于与我所有其他 Amazon VPC 服务器共享的私有 RFC1918 网络上,以及一个将所有流量转发到该私有地址的公共 IP通过 NAT(亚马逊称之为“弹性 IP”)。

我已经安装了 RRAS 并设置了 VPN。Amazon 上的私有子网是 172.16.0.0/17(这就是我所说的“Amazon LAN”),但我希望所有 VPN 客户端都使用范围 10.128.0.0/20(我称之为“ VPN 局域网”)。

在我的亚马逊控制面板中,我完成了以下操作:

  • 禁用 VPN 服务器的源/目标检查
  • 在指向 VPN 服务器网络接口的 10.128.0.0/20 池的路由表中添加了一个条目。

在路由和远程访问 MMC 中,在服务器名称的属性菜单中,我完成了以下操作:

  • 常规选项卡 -> IPv4 路由器(选中),为 LAN 和请求拨号路由启用
  • 常规选项卡 -> IPv4 远程访问服务器(选中)
  • IPv4 选项卡 -> 启用 IPv4 转发(选中)
  • IPv4 选项卡 -> 静态地址池,并指定 10.128.0.1-10.128.15.154

在我的客户端和我所有的服务器上,我已经确保在防火墙中明确允许 …

vpn routing rras windows-server-2012

8
推荐指数
1
解决办法
5535
查看次数

Strongswan VPN 已建立,但没有路由数据包

我正在 Amazon EC2 实例上的 Linux 实例和通过其 Cisco 集中器的远程网络之间使用 strongSwan 设置 VPN。我需要从远程子网中的一台机器上的 Linux 实例本身路由数据包。

连接建立正常,但没有数据包被路由。

我想我需要设置一些特定的路由规则,我应该怎么做?

软件

  • Linux 内核 3.5.0-41,
  • Ubuntu 12.10,
  • strongSwan 5.1.1(从源代码构建),
  • iptables - 没有规则。

网络

当地的

  • 亚马逊弹性 IP:56.xxx
  • 面向公众的局域网 IP:172.xxx
  • 本地虚拟子网:10.254.0.0/16
  • 本地虚拟IP:10.254.5.174

偏僻的

  • Cisco集中器公网IP:62.xxx
  • 远程子网:10.192.0.0/12

配置

配置文件

config setup

conn %default
    keyexchange = ikev1
    type = tunnel
    ikelifetime = 86400
    keylife = 28800
    keyingtries = %forever
    esp = 3des-sha
    ike = 3des-md5-modp1024
    forceencaps = yes
    leftauth = psk
    rightauth = psk

conn myconnection
    left = 172.x.x.x
    leftsubnet = …
Run Code Online (Sandbox Code Playgroud)

routing cisco-asa strongswan

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

试图了解在 CentOS 中创建静态路由的正确方法,请帮助

我一直试图了解在 CentOS 6.x 机器上添加静态路由的正确方法是什么。在一些论坛,他们说创建一个名为文件route-dev_name与相关途径(例如路由的eth0),并把它放在/etc/sysconfig/network-scripts,在一些论坛上,他们说该文件应该被命名static-routes,在这两种情况下,我无法设置静态路由。似乎在某些 CentOS 发行版中,它仅在命名文件route-dev_name时才有效,而在某些 CentOS 发行版中,它仅在命名文件时有效static-routes.. 任何人都可以帮助我吗?这是我的路由文件的内容:

192.168.20.0/24 via 192.168.20.253 dev eth0
Run Code Online (Sandbox Code Playgroud)

提前致谢

linux routing centos6

8
推荐指数
3
解决办法
4万
查看次数

局域网到局域网通过 tun 的 Openvpn 路由

我正在尝试设置一个 OpenVPN tun 来连接两个局域网

打开的 vpn 连接已启动并正常工作,但我的路由或 nat 或其他问题存在问题。

我需要的是一个工作的、路由的 openvpn 设置在服务器端和客户端应该是什么样子的例子。主要是路由表、NAT翻译、防火墙等。

这是我的工作:
在此处输入图片说明

我的 OpenVPN 客户端可以访问服务器端的网络,但我的服务器甚至无法 ping 我的 OpenVpn 客户端 eth0

我的服务器路由:

Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0 10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0 10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.168.3.0 10.8.0.2 255.255.255.0 UG 0 0 …

firewall nat routing openvpn site-to-site-vpn

8
推荐指数
1
解决办法
5万
查看次数

systemd-networkd 和直接路由

我在通过 systemd-networkd 添加直接路由时遇到问题。我想要实现的目标类似于:

ip a a 192.168.0.2/32 dev enp0s3
ip r a 192.168.0.1/32 dev enp0s3
ip r a default via 192.168.0.1
Run Code Online (Sandbox Code Playgroud)

这是奇怪的设置,我知道,但我不能使用通常ip a a 192.168.0.2/24到达网关。由于某种原因,整个 /24 子网都可以通过该子网中的网关访问。因此,此默认路由不仅适用于所有路由,还适用于到达子网。所以,我创建了/etc/systemd/network/enp0s3.network:

[Match]
Name=enp0s3

[Address]
Address=192.168.0.2/32

[Route]
Destination=192.168.0.1/32

[Route]
Gateway=192.168.0.1
Run Code Online (Sandbox Code Playgroud)

此设置的问题Route在于永远不会执行第二个块。我做了一些调试,这是第一个块的功能ipsystemd-networkd功能之间的区别Route

# ip
192.168.0.1 dev enp0s3 scope link
# networkd
192.168.0.1 dev enp0s3 proto static
Run Code Online (Sandbox Code Playgroud)

所以systemd-networkd不会添加scope link到路由中。这就是尝试通过添加默认路由192.168.0.1失败并Network is unreachable出现错误的原因。这可以通过

ip r c 192.168.0.1/32 dev enp0s3 # automatically …
Run Code Online (Sandbox Code Playgroud)

routing systemd

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