NETWORK POLICY GATEWAY · OPEN SOURCE

GFW X The firewall evolves.
So does the gateway.

A high-performance policy gateway for networks you own or are authorized to manage. One binary. One explainable path from packet to verdict.

1 single binary
3 runtime modes
2 processing paths
Scroll
01 / 04

INTERACTIVE DATA PLANE

Follow the packet.

Select a scenario. GFW X decodes the packet, resolves the flow, chooses a path, evaluates policy, and returns an explicit verdict.

  1. 01Packet sourcePCAP · NFQUEUE
  2. 02Decode + FlowClassify once
  3. 03DPI + DetectWhen needed
  4. 04Policy engineDecisionTrace
  5. 05ALLOWexplicit allow
TRACE domain: github.com → explicit allow → ACCEPT
FAST PATH

Classify once. Reuse the decision.

Known flows return through the sharded flow cache, keeping repeated work away from the hot path.

SLOW PATH

Inspect only when the signal asks.

Unknown, suspicious, or sampled traffic enters protocol and metadata analysis before policy evaluation.

02 / 04

ATOMIC RUNTIME CONTROL

Change posture.
Keep traffic moving.

Switch modes through an atomic runtime state. No service rebuild. No data-plane interruption.

Gateway online CUSTOM
atomic.Store()mode changed: custom
03 / 04

CONTROL WHERE IT MATTERS

Built for clear decisions.

Detection produces evidence. Policy decides what happens. Logging stays off the forwarding path.

01 · POLICY

Rules you can explain.

DecisionTrace shows exactly which rule produced the verdict.

02 · DETECT

Evidence before action.

Tunnel detection and enforcement stay separate by design.

03 · DPI

Metadata, not payloads.

Unknown, suspicious, or sampled traffic only. Default sample: 2%.

04 · LOGS

Forward first. Write later.

The asynchronous pipeline never blocks gateway forwarding.

05 · CONSOLE

One binary, full control.

The React console ships inside the Go executable.

04 / 04

BUILD THE GATEWAY

One command.
One binary.

Build the Web console and Go gateway together. Linux is the primary gateway platform; PCAP mode remains available for development and evaluation on other platforms.

build.sh
$ git clone https://github.com/zerobudian/gfw-x.git
$ cd gfw-x
$ make build

# run with the default configuration
$ ./gfwx run