mcpField
N
network-engineering

network-engineering

github.com/89jobrien云与 DevOps486 次安装9 周前更新
代码仓库

关于 network-engineering

Network Engineering 是用于网络设计、配置和故障排查的技能,涵盖网络架构、负载均衡、DNS、SSL/TLS、安全与性能,并提供命令和参考资料。

主要功能

  1. 01规划 VPC 和子网布局
  2. 02配置负载均衡器与路由
  3. 03设置并排查 DNS 记录
  4. 04配置并检查 SSL/TLS
  5. 05排查连接与性能问题

适用场景

  1. 01设计云网络拓扑
  2. 02调查 DNS 或连接故障
  3. 03配置负载均衡与运行状况检查
  4. 04排查证书及网络性能问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/89jobrien/steve --skill network-engineering

安装后在 Claude Code 中输入/network-engineering确认已加载。

详细介绍

网络工程

涵盖网络设计、故障排查、负载均衡、DNS 和网络安全的综合网络工程技能。

适用场景

  • 设计网络拓扑
  • 排查连接问题
  • 配置负载均衡器
  • 配置和排查 DNS
  • 设置和调试 SSL/TLS
  • 实施网络安全
  • 优化性能
  • 配置 CDN

网络架构

OSI 模型参考
层名称协议故障排查
7应用层HTTP、DNS、SMTPcurl、浏览器工具
6表示层SSL/TLSopenssl
5会话层NetBIOS-
4传输层TCP、UDPnetstat、ss
3网络层IP、ICMPping、traceroute
2数据链路层Ethernetarp
1物理层-电缆测试仪
VPC/网络设计

子网策略:

VPC CIDR: 10.0.0.0/16 (65,536 IPs)

Public Subnets (internet-facing):
  - 10.0.1.0/24 (AZ-a) - Load balancers, bastion
  - 10.0.2.0/24 (AZ-b)
  - 10.0.3.0/24 (AZ-c)

Private Subnets (application tier):
  - 10.0.11.0/24 (AZ-a) - App servers
  - 10.0.12.0/24 (AZ-b)
  - 10.0.13.0/24 (AZ-c)

Database Subnets (isolated):
  - 10.0.21.0/24 (AZ-a) - Databases only
  - 10.0.22.0/24 (AZ-b)
  - 10.0.23.0/24 (AZ-c)

流量路径:

  • Internet → 负载均衡器(公有)→ 应用(私有)→ 数据库(隔离)
  • 使用 NAT Gateway 处理私有子网的出站流量
  • 使用 VPC Endpoints 访问 AWS 服务

负载均衡

负载均衡器类型
类型层使用场景
应用型(ALB)7HTTP/HTTPS、基于路径的路由
网络型(NLB)4TCP/UDP、静态 IP、高性能
经典型4/7旧版应用
网关型3第三方设备
健康检查
# ALB Health Check
health_check:
  path: /health
  protocol: HTTP
  port: 8080
  interval: 30
  timeout: 5
  healthy_threshold: 2
  unhealthy_threshold: 3
  matcher: "200-299"
路由策略
  • 轮询:均匀分配
  • 最少连接:路由到负载最低的实例
  • IP 哈希:根据客户端 IP 保持会话
  • 加权:按比例分配
  • 基于路径:根据 URL 路径路由
  • 基于主机:根据主机名路由

DNS

记录类型
类型用途示例
AIPv4 地址example.com → 192.0.2.1
AAAAIPv6 地址example.com → 2001:db8::1
CNAME别名www → example.com
MX邮件服务example.com → mail.example.com
TXT任意文本SPF、DKIM、验证
NS名称服务器DNS 委派
SRV服务位置_sip._tcp.example.com
CAA证书颁发机构限制 CA 颁发证书
DNS 调试
# Query specific record type
dig example.com A
dig example.com MX
dig example.com TXT

# Query specific DNS server
dig @8.8.8.8 example.com

# Trace DNS resolution
dig +trace example.com

# Check propagation
dig +short example.com @{dns-server}
TTL 策略
记录类型建议 TTL
静态内容86400(1 天)
动态内容300(5 分钟)
故障转移记录60(1 分钟)
迁移前降至 60

SSL/TLS

证书类型
类型验证方式使用场景
DV域名所有权基础网站
OV组织验证商业网站
EV扩展验证高信任度网站
通配符*.domain.com多个子域名
SAN多域名多个指定域名
TLS 配置

建议设置:

  • 仅使用 TLS 1.2 和 1.3
  • 使用强密码套件(AEAD)
  • 启用 HSTS
  • 启用 OCSP 装订
  • 启用证书透明度
SSL 调试
# Check certificate
openssl s_client -connect example.com:443 -servername example.com

# Check certificate chain
openssl s_client -connect example.com:443 -showcerts

# Check expiration
echo | openssl s_client -connect example.com:443 2>/dev/null | openssl x509 -noout -dates

# Test TLS versions
openssl s_client -connect example.com:443 -tls1_2
openssl s_client -connect example.com:443 -tls1_3

故障排查

连接检查清单
  1. 物理层/云层:实例是否正在运行?
  2. 安全组:端口是否开放?
  3. NACL:子网是否允许流量通过?
  4. 路由表:路由是否正确?
  5. DNS:域名是否能解析?
  6. 应用:服务是否正在监听?
常用命令
# Check if port is listening
netstat -tlnp | grep :80
ss -tlnp | grep :80

# Test TCP connectivity
nc -zv hostname 443
telnet hostname 443

# Check routes
ip route
traceroute hostname
mtr hostname

# DNS resolution
nslookup hostname
dig hostname
host hostname

# Network interfaces
ip addr
ifconfig

# Active connections
netstat -an
ss -tuln
性能调试
# Bandwidth test
iperf3 -c server-ip

# Latency analysis
ping -c 100 hostname | tail -1

# MTU issues
ping -M do -s 1472 hostname

# Packet capture
tcpdump -i eth0 port 443

参考文件

  • references/troubleshooting.md - 详细的故障排查工作流

与其他技能的集成

  • cloud-infrastructure - 用于云网络
  • security-engineering - 用于网络安全
  • performance - 用于网络优化

评论

支持 Markdown