网络调试配置服务器

OpenPERouter工具的MCP服务器,提供网络调试和配置提取功能,适用于Claude Code的网络配置和流量捕获场景。

  • by maiqueb
  • Shell
  • 本地部署
  • 更新于
在 GitHub 查看 maiqueb/openperouter-mcp

使用说明

openperuter mcp

用于OpenPERouter工具的MCP(模型上下文协议)服务器,为Claude Code提供网络调试和配置提取功能。

MCP服务器

此存储库包括一个基于Go的MCP服务器(mcp-server)它将bash脚本作为Claude Code的工具公开。

构建MCP服务器

本地构建

go build -o mcp-server main.go
# or using make
make build

容器构建

该项目支持Podman(默认)和Docker进行容器化:

# Build with podman (default)
make container-build

# Build with docker
make CONTAINER_RUNTIME=docker container-build

# Run the container
make container-run

# Or with docker
make CONTAINER_RUNTIME=docker container-run

老人 docker-build 和 docker-run 目标仍然可用于向后兼容性。

MCP工具可用

MCP服务器公开了三个工具:

  1. extract_leaf_config -从CLAB拓扑中的所有叶节点提取FRR运行配置。配置保存到带时间戳的目录中。

  2. 开始交通捕获 -开始使用tshark从Kubernetes集群节点和骨干路由器捕获网络流量。此操作在后台启动并立即返回。如果需要,自动在节点上安装tshark。

    • 参数:
      • output_dir (可选):保存捕获文件的目录。默认为 ./captures/capture_<timestamp>.
      • capture_filter (可选):Tshark捕获过滤器(例如“arp或icmp”)。默认情况下捕获所有流量。
  3. 停止交通捕获 -停止所有正在运行的流量捕获,从容器中检索pcap文件,并将其保存到主机目录。这将优雅地终止所有tshark进程并复制捕获文件。

使用Claude代码

MCP服务器在openperuter项目中配置,位于 .claude/mcp.json构建完成后,重新启动Claude Code以加载工具。

工具(直接使用)

这个仓库提供了2个不同的bash脚本,也可以直接使用:

  • extract-leaf-configs.sh
  • capture-traffic.sh

提取路由器的运行配置

此工具访问CLAB拓扑中的所有路由器并提取FRR 路由器运行配置,将其保存在文件夹中。

用户只需调用脚本:

./extract-leaf-configs.sh

捕获流量

此工具会自动安装 tshark 如果尚未存在,则在所有Kubernetes集群节点上。

基本用法(自动生成带时间戳的目录):

# Captures to ./captures/capture_<timestamp>
./capture-traffic.sh

# With custom filter
CAPTURE_FILTER="arp or icmp" ./capture-traffic.sh

自定义输出目录:

mkdir arp-or-icmp # the destination for the captures
CAPTURE_FILTER="arp or icmp" ./capture-traffic.sh arp-or-icmp

用户应该 ctrl+c 当他们准备就绪时,停止抓捕。

备注:该脚本现在会自动检测每个容器中的包管理器(apt-get、yum或apk),并根据需要安装tshark,从而消除了手动安装步骤。