标签: routing

什么是内核IP转发?

我在很多博客上看到,在linux上使用许多网络安全/嗅探工具的同时,使用此命令启用IP转发

echo 1 > /proc/sys/net/ipv4/ip_forward
Run Code Online (Sandbox Code Playgroud)

任何人都可以用外行的术语解释我,这个命令本质上是做什么的?它能把你的系统变成路由器吗?

linux routing ip kernel

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

0.0.0.0 作为网关是什么意思?

谁能为我澄清网关分配?

添加网关0.0.0.0和分配特定IP地址作为网关有什么区别?

linux networking routing

76
推荐指数
3
解决办法
14万
查看次数

如何找出我使用哪个接口连接到互联网?

我有eth0wlan0根据ifconfig,我可以ping google.com

我如何才能找出(对于普通用户,而不是root)哪个接口处于活动状态,例如 ping(或其他什么,ping 不是强制性的)使用的接口是什么?

我使用的是 Ubuntu 11.04 或 Fedora 14

linux routing

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

在与传入相同的接口上回复?

我有一个有两个接口的系统。两个接口都连接到互联网。其中之一设置为默认路由;这样做的副作用是,如果数据包进入非默认路由接口,则回复将通过默认路由接口发回。有没有办法使用 iptables(或其他东西)来跟踪连接并通过它来自的接口发回回复?

linux routing iptables

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

将 unix 程序绑定到特定的网络接口

问题: 如何在启动程序的同时确保其网络访问是通过特定网络接口绑定的?

案例: 我想使用相同的 IP (192.168.1.1) 访问两台不同的机器,但可以通过两个不同的网络接口(eth1 和 eth2)访问。

例子:

net-bind -D eth1 -exec {Program 192.168.1.1}
net-bind -D eth2 -exec {Program 192.168.1.1}
Run Code Online (Sandbox Code Playgroud)

以上是我想要的近似值,灵感来自通过primusrunoptirun完成的硬件绑定。

挑战:正如在相关线程中所建议的,所使用的接口不是由程序选择的,而是由内核选择的(因此是上例中的预绑定语法)。

我找到了一些相关的解决方案,但并不令人满意。它们基于通过用户特定的网络黑名单绑定网络接口;即,以只能访问单个特定网络接口的用户身份运行该进程。

routing network-interface

55
推荐指数
4
解决办法
6万
查看次数

使用具有特定网络接口的 ssh

我正在使用openconnect连接到 vpn。输入凭据后,我得到以下信息:

POST https://domain.name/...
Got CONNECT response: HTTP/1.1 200 OK
CSTP connected. DPD 30, Keepalive 30
Connected tun0 as xxx.xxx.xxx.xxx, using SSL
Established DTLS connection
Run Code Online (Sandbox Code Playgroud)

运行ifconfig显示我有一个tun0具有特定 IP 地址的新网络接口。

问题:如何ssh只使用网络接口,tun0以便我可以访问该专用网络上的计算机?

编辑:

我的网络配置 ( route -n) 似乎是这样的:

172.16.194.0    0.0.0.0         255.255.255.0   U     0      0        0 vmnet8
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
172.16.25.0     0.0.0.0         255.255.255.0   U     0      0        0 vmnet1
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth0
0.0.0.0         192.168.0.1 …
Run Code Online (Sandbox Code Playgroud)

ssh routing vpn

43
推荐指数
3
解决办法
11万
查看次数

如何拒绝 OpenVPN 服务器推送的路由?

当我通过 Internet 建立到我们公司 OpenVPN 服务器的 OpenVPN 客户端连接时,它会推送几个静态路由。不幸的是,这些路由在我的本地网络环境中破坏了一些连接,因为它们与我自己的路由相冲突。我如何拒绝这些路线?

networking routing openvpn

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

基于目的端口的不同接口上的输出流量

我的问题与仅允许某些接口上的某些出站流量基本相同。

我有两个接口eth1(10.0.0.2) 和wlan0(192.168.0.2)。我的默认路由是eth1. 假设我希望所有 https 流量都通过wlan0。现在,如果我使用另一个问题中建议的解决方案,https 流量将通过wlan0,但源地址仍为eth1(10.0.0.2)。由于此地址对于wlan0网关不可路由,因此永远不会返回答案。简单的方法是在应用程序中正确设置 bind-addr,但在这种情况下它不适用。

我想我需要重写 src-addr:

# first mark it so that iproute can route it through wlan0
iptables -A OUTPUT -t mangle -o eth1 -p tcp --dport 443 -j MARK --set-mark 1
# now rewrite the src-addr
iptables -A POSTROUTING -t nat -o wlan0 -p tcp --dport 443 -j SNAT --to 192.168.0.2
Run Code Online (Sandbox Code Playgroud)

现在 tcpdump 看到传出的数据包很好,传入的数据包到达 192.168.0.2,但是它们可能永远不会在应用程序中结束,因为我所看到的是应用程序正在重新发送 SYN 数据包,尽管 SYN-已经收到 …

linux networking routing iptables

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

在 Linux 机器上调试路由表的工具?

有没有可以在 Linux 机器上调试路由表的工具?

我的意思是我可以通过输入一个 ip 地址来使用它,它会考虑现有的路由表并从表中输出匹配项,所以我可以知道数据包会去哪里?

debugging routing ip

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

OpenVPN:将路由推送到具有不同网关的客户端

我希望我的 OpenVPN 服务器将路由推送到具有不同默认网关的客户端。

具体来说,我的 OpenVPN 服务器的内部 IP 地址为10.0.0.1,我希望它推送10.10.10.1/24使用网关的路由10.0.0.2

是否可以通过在服务器配置文件中指定推送路由来做到这一点?

routing openvpn

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

标签 统计

routing ×10

linux ×5

networking ×3

ip ×2

iptables ×2

openvpn ×2

debugging ×1

kernel ×1

network-interface ×1

ssh ×1

vpn ×1