- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试在 tc
的帮助下通过 GRE-Tunnel tun0
从一个接口(interface)镜像“所有”网络流量。 GRE-Tunnel 工作正常,我可以 ping 并通过它发送数据包,没有任何问题。我使用以下命令添加了 tc-qdisc
和 tc-filter
:
tc qdisc add dev ens5 ingress
tc filter add dev ens5 parent ffff: \
protocol all \
u32 match u8 0 0 \
action mirred egress mirror dev tun0
和
tc qdisc add dev ens5 handle 1: root prio
tc filter add dev ens5 parent 1: \
protocol all \
u32 match u8 0 0 \
action mirred egress mirror dev tun0
喜欢这个Tutorial
问题
问题是只有入口流量通过 GRE 隧道。当我通过接口(interface) ens5
ping 另一台计算机时,我只能通过 tun0
接口(interface)获得 icmp echo replies
。我做错了什么?
调试
ubuntu@switch:~$ tcpdump -i tun0 icmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tun0, link-type LINUX_SLL (Linux cooked), capture size 262144 bytes
10:23:28.952197 IP 192.168.20.12 > 192.168.20.15: ICMP echo reply, id 3453, seq 1, length 64
10:23:29.954454 IP 192.168.20.12 > 192.168.20.15: ICMP echo reply, id 3453, seq 2, length 64
10:23:30.952864 IP 192.168.20.12 > 192.168.20.15: ICMP echo reply, id 3453, seq 3, length 64
10:23:31.953207 IP 192.168.20.12 > 192.168.20.15: ICMP echo reply, id 3453, seq 4, length 64
10:23:32.955350 IP 192.168.20.12 > 192.168.20.15: ICMP echo reply, id 3453, seq 5, length 64
10:23:33.957000 IP 192.168.20.12 > 192.168.20.15: ICMP echo reply, id 3453, seq 6, length 64
10:23:34.956313 IP 192.168.20.12 > 192.168.20.15: ICMP echo reply, id 3453, seq 7, length 64
最佳答案
我自己解决了这个问题。
tc 镜像带有以太网 header 的导出流量和没有以太网 header 的入口流量GRE 隧道只需要 IP 数据包,因此 header 不匹配。如果我使用 VXLAN 而不是 GRE,它工作正常。
关于linux - 使用 tc over GRE Tunnel 的流量镜像只获取入口流量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41037569/
我的设备和电脑连接到同一网络,我们如何修复此错误, 重新启动后,它会给出相同的错误: Switched to a LAN URL because the tunnel appears to be do
基本上,我正在尝试使用 python 的 urllib2 .我想连接并从站点获取数据。问题是我得到了错误 urllib2.URLError: 在对这个库进行重复实验后,我发现我编写的代码在 http
我一直在用ngrok在我的手机上测试应用程序,过去 2 周使用 react-native。到目前为止,它非常体面和快速。 直到今天。 现在突然需要大约 50 秒的时间来请求从我的手机到我的本地主机并返
我刚刚在本地计算机上安装了ngrok, ngrok http 80 照常。 但是,当我尝试访问端口80时 localhost:80 我收到此错误消息 The connection to http://
给定一个网格图,其中每个单元格都可以用一对 (x, y) 和此类单元格的向量来描述,我如何(很好地)检查该向量中的单元格是否形式一个“隧道”,即。它们全部垂直或水平排列?但是,如果我只想查看它们中的大
我有 ngrok在我远程访问的服务器上运行。 我通过使用明显的开始,ngrok.exe http 80 .问题是当我在那个特定的服务器上签字时,ngrok 会关闭,我会失去我的隧道。有没有办法让 ng
我尝试隐藏 Chrome 社交部分生成的 session 。但是隐藏在主机列中标记为“Tunnel to”的流量不起作用。尽管我成功地隐藏了基于主机名模式的另一个 session 。 if (oSes
我有一个连接到外部 MYSQL 数据库的 C# 应用程序,一切正常,但使用它的公司已阻止 MYSQL 连接,我无法允许它。我对 C# 和 MYSQL 相当陌生,并且研究过 HTTP 和 SSH 隧道,
"; } else { echo "Authentication failed..."; } $mysql_ip = '10.41.12.71'; $mysql_de
我需要一台服务器接收来自客户端的ip请求(不在同一个内网),我可以 将所有的响应包路由到一个特殊的网关服务器,然后我将响应包发送到 客户端经过一些处理。它就像 VPN,但我想做一些基于开发的 开源项目
我正在尝试在需要基本身份验证和自签名 HTTPS 连接的企业代理后面运行一个空白的 Flutter 项目。 我在 ~/.gradle/gradle.properties 和 ~/.profile 中添
我有一个 AWS DocumentDB设置我可以使用以下方法通过我的跳转盒连接到: mongo --ssl --host aws-host:27017 --sslCAFile rds-combined
我在一所大学拥有两台计算机。它们都位于某种防火墙等后面,这不允许我通过网络直接连接它们。它们都可以通过 SSH 公用计算机,但我不知道如何从一台计算机到另一台计算机。我还经营一个小网站。我的问题是,我
我开发了一个 VOIP 应用程序,它使用 PJSip 通过 SIP channel 进行通信。我想做的是创建一个 HTTP 隧道,以便系统即使在 VOIP 被阻止的区域也能正常工作。使用 PJSip
我正在我的机器上运行 Ansible。而且我的机器没有 ssh 访问远程机器的权限。来自本地计算机的端口 22 连接被研究所防火墙阻止。但我可以访问一台机器(ssh-tunnel),通过它我可以登录到
我正在尝试使用tunnel-ssh包连接到mongodb(mongodb包)。它已连接,我可以记录数据库,但它立即抛出错误并断开连接。 buffer.js:705 throw new ERR_
我通过另外 2 个服务器连接到 linux 服务器: MyPC --(ssh)--> serverA --(ssh)--> serverB --(ssh)--> FinalServer httpd 在
例如: 如果我当前目录是/temp/src/com。而在vim中编辑的文件来自/java/test。现在我想将文件的路径添加到路径环境中。那么如果vim中有set path+=$(filepath)这
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 8年前关闭。 Improve this q
可以使用 postgres_fdw 通过 ssh 隧道连接吗? 数据库只能从数据库服务器访问,我需要从另一个远程服务器加入。数据库服务器使用 SSH key 登录。 如果可以,请问怎么做? 最佳答案
我是一名优秀的程序员,十分优秀!