AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-102689

RaveTheTadpole's questions

Martin Hope
RaveTheTadpole
Asked: 2013-08-15 15:54:09 +0800 CST

强制通过网段捕获本地 TCP 数据包

  • 2

我有两台机器,A 和 B,运行 RHEL Linux。每台机器都有一个连接到我称之为“LAN”网络的 1Gig 网卡。每台机器都有一个 10Gig 网卡,连接到我称之为“BIGDATA”的网络。除了通过这些机器外,这些网络没有相互连接。

我在 BIGDATA 网络上的 A 的 10Gig 接口上有光纤分接头。水龙头通向捕获服务器,我想在其中记录所有进出的数据。最初都是 TCP,但将来也许一些 UDP 会很好。

出于开发和测试目的,我想在 A 上运行 TCP 对话的双方,然后通过这些水龙头捕获对话。将使用此设置的开发人员不会在 B 上拥有帐户(至少这是我的目标)。

在我看来,超级用户应该可以在 B 上设置某种转发/中继,这将允许 A 上的客户端通过分接光纤连接到 A 上的服务器。即流量从 LAN 网络上的 A 到 B,然后在 BIGDATA 网络上返回到 A。返回流量采用相同的路径返回。

到目前为止,我的尝试是使用 ssh 隧道。喜欢A:~ $ssh B -L 8051:<A's-BIGDATA-IP>:3434 -N。这实际上非常适合捕获从客户端到服务器的流量。但不幸的是,服务器的响应是找到只留在本地的捷径,并且永远不会出现在光纤上。查看wireshark,数据包知道它们的目标IP,并且不觉得有义务收回隧道。

我找到了这个答案,但我相信所有的解决方案都要求两个接口都在同一个网络上。也许我的解决方案的种子在那里,但我找不到它们。

我想我可以用 C 从头开始​​编写这个程序,在 B 上运行一个程序,在 LAN 接口上建立 TCP 连接,在 BIGDATA 接口上启动另一个 TCP 连接,返回到 A,并转发回复。它只会复制 TCP 有效负载,这足以满足我的目的。

是否有一个很酷的工具可以进行这种转发/中继?

有没有办法让 ssh 隧道按照我想要的返回流量的方式工作?

linux
  • 3 个回答
  • 929 Views
Martin Hope
RaveTheTadpole
Asked: 2012-06-20 15:03:49 +0800 CST

cset as non-root 为正在运行的进程设置 cpu 亲和力

  • 1

我一直在玩 cset 来为正在运行的进程设置 cpu 亲和力。我正在使用 set 和 proc 手动重新创建内置的“屏蔽”函数,以便为我的应用程序的特定线程添加一些子集。我有一个 bash 脚本调用 cset 来创建集合,并将正确的线程移动到正确的集合。它在使用 sudo 运行时有效。

现在我想让另一个没有 sudo 权限的用户可以执行这个脚本。我足够信任这个用户,可以对 cset 负责,但不想开放 root 的广泛权力。

我认为 CAP_SYS_NICE —— sched_setaffinity 所需要的,我只是假设 cset 必须使用 —— 在脚本上就足够了,但这没有用。我尝试将 CAP_SYS_NICE 扩展到 cset 程序(这是 cset python 库的一个瘦 python 包装器)。没有骰子。cap_to_text 在我的 CAP_SYS_NICE 脚本上的输出是“=cap_ipc_lock,cap_sys_nice,cap_sys_resource+eip”(由于其他原因它有 ipc_lock 和 sys_resource;我认为只有 sys_nice 是相关的)。

有任何想法吗?

linux affinity
  • 3 个回答
  • 2445 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve