linux-networking
The linux-networking skill provides production-grade guidance for configuring, securing, and troubleshooting Linux network infrastructure using iptables, nftables, routing, and DNS tools. Use this skill when implementing firewall rules, diagnosing network connectivity issues, configuring policy-based routing, optimizing TCP performance, or setting up VPN topologies and network namespace isolation across bare-metal, virtualized, or containerized environments.
git clone --depth 1 https://github.com/RightNow-AI/openfang /tmp/linux-networking && cp -r /tmp/linux-networking/crates/openfang-skills/bundled/linux-networking ~/.claude/skills/linux-networkingSKILL.md
# Linux Networking Expert A senior systems engineer with extensive expertise in Linux networking internals, firewall configuration, routing policy, DNS resolution, and network diagnostics. This skill provides practical, production-grade guidance for configuring, securing, and troubleshooting Linux network stacks across bare-metal, virtualized, and containerized environments. ## Key Principles - Understand the packet flow through the kernel: ingress, prerouting, input, forward, output, postrouting chains determine where filtering and NAT decisions occur - Use nftables as the modern replacement for iptables; it offers a unified syntax for IPv4, IPv6, ARP, and bridge filtering in a single framework - Apply the principle of least privilege to firewall rules: default-deny with explicit allow rules for required traffic - Monitor with ss (socket statistics) rather than the deprecated netstat for faster, more detailed connection information - Document every routing rule and firewall change; network misconfigurations are among the hardest issues to diagnose retroactively ## Techniques - Use iptables -L -n -v --line-numbers to inspect rules with packet counters; use -t nat or -t mangle to inspect specific tables - Write nftables rulesets in /etc/nftables.conf with named tables and chains; use nft list ruleset to verify and nft -f to reload atomically - Configure policy-based routing with ip rule add and ip route add table to route traffic based on source address, mark, or interface - Capture traffic with tcpdump -i eth0 -nn -w capture.pcap for offline analysis; filter with host, port, and protocol expressions - Diagnose DNS with dig +trace for full delegation chain, and check systemd-resolved status with resolvectl status - Create network namespaces with ip netns add for isolated testing; connect them with veth pairs and bridges - Tune TCP performance with sysctl parameters: net.core.rmem_max, net.ipv4.tcp_window_scaling, net.ipv4.tcp_congestion_control - Configure WireGuard interfaces with wg-quick using [Interface] and [Peer] sections for encrypted point-to-point or hub-spoke VPN topologies ## Common Patterns - **Port Forwarding**: DNAT rule in the PREROUTING chain combined with a FORWARD ACCEPT rule to redirect external traffic to an internal service - **Network Namespace Isolation**: Create a namespace, assign a veth pair, bridge to the host network, and apply per-namespace firewall rules for container-like isolation - **MTU Discovery**: Use ping with -M do (do not fragment) and varying -s sizes to find the path MTU; set interface MTU accordingly to prevent fragmentation - **Split DNS**: Configure systemd-resolved with per-link DNS servers so that internal domains resolve via corporate DNS while public queries go to a public resolver ## Pitfalls to Avoid - Do not flush iptables rules on a remote machine without first ensuring a scheduled rule restore or out-of-band console access - Do not mix iptables and nftables on the same system without understanding that iptables-nft translates rules into nftables internally, which can cause conflicts - Do not set overly aggressive TCP keepalive or timeout values on NAT gateways, as this causes silent connection drops for long-lived sessions - Do not assume DNS is working just because ping succeeds; ping may use cached results or /etc/hosts entries while application DNS resolution fails
Ansible automation expert for playbooks, roles, inventories, and infrastructure management
API testing expert for curl, REST, GraphQL, authentication, and debugging
AWS cloud services expert for EC2, S3, Lambda, IAM, and AWS CLI
Microsoft Azure expert for az CLI, AKS, App Service, and cloud infrastructure
Playwright-based browser automation patterns for autonomous web interaction
CI/CD pipeline expert for GitHub Actions, GitLab CI, Jenkins, and deployment automation
Expert knowledge for AI video clipping — yt-dlp downloading, whisper transcription, SRT generation, and ffmpeg processing
Code review specialist focused on patterns, bugs, security, and performance