Questions tagged «routing»

路由(在基于IP的网络中)是在网络中选择要发送网络流量的路径的过程。

4
尝试连接到静态IP网络中的网关
我在raspberryPi上运行了arch-linux-arm。 我所在的网络使用静态IP。 gateway IP是192.168.178.5 我设备的IP192.168.178.201 我使用的是连接到互联网: ip addr add 192.168.178.201 dev eth0 ip route add default via 192.168.178.5 但是后者会产生 RTNETLINK answeres: Network is unreachable 我所缺少的东西吗? UPDATE mtak的答案解决了最初的问题, 但是我仍然无法到达网关。 试图ping导致destination host unreachable

6
如何通过隧道路由特定地址?
我只能从服务器所在的子网访问某些网站/服务(请考虑典型的Intranet方案)。有没有一种方法可以透明地路由通过SSH隧道到达这些地址的流量? 请考虑以下设置: 我的笔记本电脑已连接到家庭网络。它不能直接在IP X和Y上访问服务。我有一个到服务器的SSH隧道,该服务器位于可以实际访问这些服务的子网上。 我能以某种方式自动封装到X和Y子网的所有流量以通过此隧道,而不必运行将通过服务器发送所有流量的整个VPN解决方案吗?换句话说:所有流向任何其他子网的流量仍应直接从便携式计算机进行,而无需通过服务器(使用隧道)。

3
不在同一网络中的两个服务器之间的scp
我可以使用2个不同的VPN连接访问两台服务器。我设法在我的机器上同时运行两个VPN(一些路由规则)。 我想scp <remote1>:some/file <remote2>:destination/folder从我的笔记本电脑终端上进行操作。但是,当我尝试这样做时,scp在remote1上调用的命令无法找到remote2,因为它们不在同一网络中。是否可以强制该scp命令作为路由器通过我的笔记本电脑? 如果我尝试使用Nautilus(连接到服务器,两个服务器,然后复制粘贴),它都可以工作,但是我想从终端上进行。
13 ssh  routing  scp  vlan 

1
通过openvpn隧道路由公共ipv6流量
我正在尝试通过vpn隧道路由IPv6流量。这样,我应该能够在不支持IPv6的网络中使用IPv6。 我有一个分配了IPv6块的VPS。我想用于openvpn客户端的部分代码块。我想到的范围是2001:db8::111:800:0/112(前缀是匿名的),因为openvpn仅支持/ 64和/ 112作为子网。 通过隧道的IPv6已经可以正常工作了,我可以从客户端ping服务器(2001:db8::111:800:1),也可以在服务器(2001:db8::111:100:100和2001:db8:216:3dfa:f1d4:81c0)上进行接口。 但是,当尝试从客户端ping google.com时,我没有响应(ping超时)。为了调试此问题,我使用tcpdump捕获了服务器上的流量,并且可以看到ping数据包发出了,但是没有回信。将日志规则添加到ip6tables可以看到相同的数据包,但是没有任何结果。 我使用了一个在线traceroute工具,该工具从服务器获取超时。我还尝试直接在接口上设置ip,这确实导致ip(2001:db8::111:800:1001)可以访问,因此我认为这是路由问题。 我已通过启用了ipv6转发/proc/sys/net/ipv6/conf/all/forwarding。ip6tables具有允许所有链条使用的策略。 我的问题是,Linux究竟需要什么来接受未分配给接口的ip的数据包并进一步路由它?仅存在的一条路线似乎还不够。 这是我的客户端和服务器的设置。如果需要更多信息,请告知。 客户 # ip -6 addresses 10: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qlen 100 inet6 2001:db8::111:800:1001/112 scope global valid_lft forever preferred_lft forever # ip -6 routes 2001:db8::111:800:0/112 dev tun0 proto kernel metric 256 2000::/3 dev tun0 metric 1024 服务器 # ip …
13 routing  openvpn  ipv6 

4
如何删除所有默认网关
我正在运行定制的Linux计算机,因此并非所有Linux命令都可用。 我执行与网络相关的命令,因此我需要在运行命令之前设置默认网关,然后立即删除该网关。 为此,我在一行中运行所有命令: /sbin/route add default gw 10.10.10.10;my command;/sbin/route del default gw 10.10.10.10; 问题是,由于某种原因,我曾经在同一台计算机上找到2个默认网关,这导致我的所有命令均失败,因为即使我在运行测试之前设置了默认网关,它仍会混乱并且无法运行我的测试。 那么有没有办法在一个命令中删除所有默认网关?我有大量正在增加的计算机,在每台计算机上植入脚本是不切实际的。我需要一个简单的命令,如下所示: /sbin/route del all default;set my default gw;mycommand;/sbin/route del all default; 所有到目前为止,我还发现了一个命令来删除一个默认网关,但并不是所有的人 /sbin/route del default,不会为我工作。 /sbin/route 帮助显示以下内容 /sbin/route --help Usage: route [{add|del|delete}] Edit the kernel's routing tables Options: -n Don't resolve names -e Display other/more information …
13 linux  ip  routing 

1
如何了解OpenVPN客户端上的路由表
我只是设置了OpenVPN,它按预期工作。但是,客户端的路由表使我无休止。这是路由表: # route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 10.8.0.5 0.0.0.0 255.255.255.255 UH 0 0 0 tun0 10.8.0.1 10.8.0.5 255.255.255.255 UGH 0 0 0 tun0 54.202.18.143 10.0.2.2 255.255.255.255 UGH 0 0 0 eth0 10.0.2.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0 169.254.0.0 0.0.0.0 …

2
具有多个相同LAN的1:1 NAT
我想连接位于远程建筑物上的多个LAN。 “中心”站点有一台运行OpenVPN的Linux计算机。每个远程站点还运行OpenVPN。 中央站点的局域网编号为192.168.0.0/24 几个远程站点也编号为192.168.0.0/24 我不能/不想/不想/无论如何修改局域网编号 我无法控制大多数远程OpenVPN 然后,我需要: 1.定义虚拟LAN 2.为每个站点配置1:1 NAT 3.必须在中央路由器上配置1:1 NAT 。 因此,每个站点都具有一个10.10.x.0 / 24 LAN。 当计算机要在站点12上访问192.168.0.44时,只需将一个paquet发送到10.10.12.44 操作VPN对我来说不是问题。我目前连接60多个站点。但是我找不到实现此1:1 NAT的简单方法。 这是从中央站点发送到远程站点的数据包及其响应数据包的示例: 我使用iptables NETMAP进行了一些测试,但由于无法找到路由决策后无法修改源+目标的方法,因此无法使其正常工作。 我宁愿避免使用新的--client-natOpenVPN功能。 也许我必须强制路由ip route?还是用两次循环进入网络堆栈veth? 注意:我不想化妆舞会。仅1/1 NAT。 编辑: 使用常规的openVPN设置是不可能的。因为来自远程站点的数据包与来自另一个站点的数据包是无法区分的:两者具有相似的源地址和目标地址,并且都来自相同的Tun(或Tap)接口。因此,不可能对其进行源NAT。 解决方案1:在远程站点上进行NAT。就我而言,这是不可能的。我只需要在中央站点上执行此操作即可。 解决方案2:为每个远程站点设置一个VPN。因此,我每个人要吃一次。我认为可以。不是很有效的内存,但是还可以。 解决方案3:在VPN内为每个站点设置一个(未加密的)隧道。这将为每个接口提供一个接口。简单的隧道不是跨平台的(据我所知)。例如,对于Linux,GRE,ipip或sit都可以,但是某些远程站点仅运行一台Windows计算机,因此在其上安装了openVPN。因此不可能建立一个简单的隧道。另一个选择是使用更复杂的隧道(“?”),但是系统和sysadmin的开销可能比拥有多个VPN更大。 解决方案4:编译最新的openVPN,因为它包含1:1 NAT功能。我这周测试。
13 linux  routing  openvpn 

3
OpenConnect:设置默认路由
我正在尝试使用OpenConnect连接到我公司的Cisco VPN(AnyConnect) 连接似乎工作正常,我不了解的是如何设置路由。我是从命令行执行此操作的。 我使用默认的VPN脚本进行如下连接: openconnect -u MyUserName --script path_to_vpnc_script myvpngateway.example.com 我输入了密码,并且连接正常,但是我的默认路由已更改为强制所有流量通过VPN链接,而我只希望公司流量通过VPN链接。 我需要在vpnc脚本中添加一些变量吗?目前尚不清楚该如何完成。

5
在启动接口时是否可以阻止添加默认路由?
我有一个带有两个NIC的系统。这台机器和一些附带的设备将被移动并连接到不同的LAN,或者有时它将使用拨号。 eth0: - 10.x.x.x address space - no internet gateway - only a few devices eth1 (when used): - 172.16.x.x or 192.168.x.x or other address spaces - access to the gateway from LAN to internet ppp0 (when used): - internet access through dialup using KPPP 我正在使用ifconfig来打开或关闭接口(除了ppp0,它由KPPP处理)。 如果我首先启动eth1,它会从其DHCP中获取一个地址并获取网关,并将其添加到路由中,因此到达LAN和Internet不会有任何麻烦。 如果我首先或第二次启动eth0,它将获取其地址并将默认网关设置为其地址空间内(在10.xxx范围内)。如果我先启动eth0,然后启动eth1,则默认网关仍保持在10.xxx范围内。 因此,无论我做什么,eth0都会覆盖eth1并“声明”路由中的网关。 有什么方法可以防止eth0声明网关,或确保eth1(如果是第2个启动的话)使用其网关?还是我可以以某种方式优先使用哪个接口的网关,而不是其他接口? …

1
OpenVPN-了解路由表+如何通过VPN仅将流量路由到特定ip
我正在使用OpenVPN连接到VPN服务,并且一切正常。连接后,这些是自动设置的规则: root@linux:~# ifconfig eth0 Link encap:Ethernet HWaddr 00:AA:1B:01:AC:FB inet addr:192.168.1.201 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:46867 errors:0 dropped:0 overruns:0 frame:0 TX packets:29742 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:37977382 (36.2 MiB) TX bytes:5098121 (4.8 MiB) Interrupt:16 tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:10.7.7.126 P-t-P:10.7.7.125 Mask:255.255.255.255 …
12 routing  openvpn 


3
在Linux中修改现有的路由条目
在Linux中修改现有路由条目的度量的命令是什么?我可以使用“ ip route change”命令更改现有条目的网关,如下所示,但无法更改指标。还有其他命令吗? route –n 40.2.2.0 30.1.3.2 255.255.255.0 eth2 ip route change 40.2.2.0/24 via 30.1.2.2 route -n 40.2.2.0 30.1.2.2 255.255.255.0 eth1
11 linux  routing 

2
在两个网络接口上分离网络流量
您能否借助您的专业知识来理解如何配置两个网络接口上的网络流量分离? 到目前为止,据我了解,静态路由用于网络流量,该流量不旨在使用默认网关。默认网关用于所有不面向本地网络且在路由表中未指定首选路由的流量。 情况如下。 网络中的每台计算机都有两个网卡。 每个产品的生产接口为eth0(GW = 10.10.10.1)。 每个的管理接口是eth1(GW = 192.168.100.1)。 生产和管理流量应完全分开。 我在下面发布了我与Debian Wheezy一起尝试过的事情。而且,我的问题是,尽管我设置的主机可以在两个接口上进行通信,但是各个主机似乎在错误的接口上“听到”了流量。例如: 主机140 eth0 Link encap:Ethernet HWaddr 08:00:27:d1:b6:8f inet addr:10.10.10.140 Bcast:10.10.10.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fed1:b68f/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1341 errors:0 dropped:0 overruns:0 frame:0 TX packets:2530 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:641481 (626.4 …
11 debian  centos  rhel  routing 

2
在Linux中,什么度量标准没有路由?
如果(在Linux中)具有以下两种方法: default via 192.168.1.1 dev enp58s0f1 default via 192.168.16.1 dev wlp59s0 proto static metric 600 我希望使用第一个,但事实并非如此:使用第二个。 如果我将其更改为: default via 192.168.1.1 dev enp58s0f1 proto static metric 100 default via 192.168.16.1 dev wlp59s0 proto static metric 600 然后它按预期工作。似乎“无度量”比任何数字都更糟糕(更高),而不是度量0。 这是怎么回事 它特定于Linux还是网络标准? 提前致谢。

1
在不失去控制的情况下更改远程主机IP地址(Linux)
我怎样才能改变一个远程主机的主 IP地址,而不会断开所有(没有“无IP地址”状态)。 根据我的研究,此事在Internet上讨论不多。我发现的最佳资源有些棘手。 示例:将10.0.0.11/24更改为10.0.0.15/24 1. ssh root@10.0.0.11 2. ip addr add 10.0.0.15/24 dev eth0 3. logout 4. ssh root@10.0.0.15 5. ip addr del 10.0.0.11/24 dev eth0 问题:由于10.0.0.11是主要地址,所以最后一个命令将同时删除IP地址和连接丢失,并且在删除后会删除其辅助地址(10.0.0.15属于该地址)。 我知道我可以通过添加10.0.0.11/ 25(而不是24)来“作弊” 。但是,我认为从理论上讲是可以做到的。 你怎么看?
10 linux  ip  routing 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.