internal/

directory
v0.5.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 20, 2026 License: MIT

Directories

Path Synopsis
Package agent は自宅側のエージェント(仕様 7 節)。
Package agent は自宅側のエージェント(仕様 7 節)。
allowtargets
Package allowtargets は、エージェントが接続してよい宛先の一覧(設計文書 7 節)。
Package allowtargets は、エージェントが接続してよい宛先の一覧(設計文書 7 節)。
credentials
Package credentials はエージェントの認証情報ファイル(agent.json)を扱う(仕様 9 節)。
Package credentials はエージェントの認証情報ファイル(agent.json)を扱う(仕様 9 節)。
Package buildinfo は、ビルド時に埋め込む値を持つ。
Package buildinfo は、ビルド時に埋め込む値を持つ。
Package dataplane defines the dataplane Backend contract (design.md 7a.2, 7a.7 節): what a DataplaneMode's forwarding implementation (userspace and the Linux kernel) offers to the control plane, and the dataplane participant the Runtime in internal/reconcile drives.
Package dataplane defines the dataplane Backend contract (design.md 7a.2, 7a.7 節): what a DataplaneMode's forwarding implementation (userspace and the Linux kernel) offers to the control plane, and the dataplane participant the Runtime in internal/reconcile drives.
linuxkernel
Package linuxkernel is the kernel dataplane Backend (design.md 6.1, 7a.7, 7a.8 節 Phase 3): kernel WireGuard (linuxkernel/wg), nftables DNAT and admission (linuxkernel/nft), and conntrack convergence (linuxkernel/conntrack), behind the same dataplane.Backend interface the userspace Backend implements.
Package linuxkernel is the kernel dataplane Backend (design.md 6.1, 7a.7, 7a.8 節 Phase 3): kernel WireGuard (linuxkernel/wg), nftables DNAT and admission (linuxkernel/nft), and conntrack convergence (linuxkernel/conntrack), behind the same dataplane.Backend interface the userspace Backend implements.
linuxkernel/conntrack
Package conntrack は、外から入って DNAT されたフローを Plan に収束させる(仕様 6.1 節、 設計文書 7a.8 節 Phase 3)。
Package conntrack は、外から入って DNAT されたフローを Plan に収束させる(仕様 6.1 節、 設計文書 7a.8 節 Phase 3)。
linuxkernel/nft
Package nft は、Plan から VPS の table inet wgft を組み立てて適用する(仕様 6.1 節、設計文書 7a.2 節)。
Package nft は、Plan から VPS の table inet wgft を組み立てて適用する(仕様 6.1 節、設計文書 7a.2 節)。
linuxkernel/wg
Package wg は VPS(および将来の agent の kernel backend、Phase 7)の WireGuard インタフェースを 宣言に収束させる(仕様 4, 9 節、設計文書 7a.7 節)。
Package wg は VPS(および将来の agent の kernel backend、Phase 7)の WireGuard インタフェースを 宣言に収束させる(仕様 4, 9 節、設計文書 7a.7 節)。
userspace
Package userspace is the userspace dataplane Backend (design.md 6.3, 7a.7 節).
Package userspace is the userspace dataplane Backend (design.md 6.3, 7a.7 節).
userspace/relay
Package relay は、エージェントの netstack 上のリスナーと、LAN 内の target への中継を持つ(仕様 7 節)。
Package relay は、エージェントの netstack 上のリスナーと、LAN 内の target への中継を持つ(仕様 7 節)。
userspace/tunnel
Package tunnel は、エージェント側が wireguard-go と gVisor の netstack でユーザー空間に持つトンネル (仕様 7 節)。
Package tunnel は、エージェント側が wireguard-go と gVisor の netstack でユーザー空間に持つトンネル (仕様 7 節)。
userspace/utun
Package utun は、ユーザー空間モード(仕様 6.3 節)の VPS 側トンネル。
Package utun は、ユーザー空間モード(仕様 6.3 節)の VPS 側トンネル。
Package flock は、隣の .lock ファイルへの排他ロック(仕様 9 節)。
Package flock は、隣の .lock ファイルへの排他ロック(仕様 9 節)。
Package lograte は、同じ理由で繰り返し出るログを間引く門を持つ(仕様 10.4 節)。
Package lograte は、同じ理由で繰り返し出るログを間引く門を持つ(仕様 10.4 節)。
Package model は、外部契約(proto.Rule)から正規化した内部のドメインモデルを持つ(設計文書 7a.2 節)。
Package model は、外部契約(proto.Rule)から正規化した内部のドメインモデルを持つ(設計文書 7a.2 節)。
Package netpipe は 2 つの接続を双方向に中継する(ハーフクローズ維持)。
Package netpipe は 2 つの接続を双方向に中継する(ハーフクローズ維持)。
Package nettun は、エージェントのトンネル(internal/dataplane/userspace/tunnel)とサーバのユーザー空間モードの トンネル(internal/dataplane/userspace/utun)が共有する、netstack と TUN の接着部。
Package nettun は、エージェントのトンネル(internal/dataplane/userspace/tunnel)とサーバのユーザー空間モードの トンネル(internal/dataplane/userspace/utun)が共有する、netstack と TUN の接着部。
Package planner turns a normalized rule set and admission policy inputs into a Plan: the backend-independent description of what wgft should forward (design.md 7a.2 節).
Package planner turns a normalized rule set and admission policy inputs into a Plan: the backend-independent description of what wgft should forward (design.md 7a.2 節).
platform
linux
Package linux は、VPS と(将来の Phase 7 の)agent の kernel backend が共通に使う、Linux ホスト側の 前段検査と sysctl の読み書きを持つ(設計文書 7a.7 節)。
Package linux は、VPS と(将来の Phase 7 の)agent の kernel backend が共通に使う、Linux ホスト側の 前段検査と sysctl の読み書きを持つ(設計文書 7a.7 節)。
Package policy は AdmissionPolicy の中間表現(IR)を持つ(設計文書 7a.2、7a.4 節)。
Package policy は AdmissionPolicy の中間表現(IR)を持つ(設計文書 7a.2、7a.4 節)。
admissiontest
Package admissiontest は、Admission Policy の共有 fixture(internal/policy/testdata/admission)を 読み、評価器に流して照らすテスト用の部品である(設計文書 7a.9 節「fixture の形式と等価性の検査」)。
Package admissiontest は、Admission Policy の共有 fixture(internal/policy/testdata/admission)を 読み、評価器に流して照らすテスト用の部品である(設計文書 7a.9 節「fixture の形式と等価性の検査」)。
goengine
Package goengine は AdmissionPolicy の IR(internal/policy)から作る Go の評価器である (設計文書 7a.9 節「Go の評価器へのコンパイルの約束」)。
Package goengine は AdmissionPolicy の IR(internal/policy)から作る Go の評価器である (設計文書 7a.9 節「Go の評価器へのコンパイルの約束」)。
nftables
Package nftables は、AdmissionPolicy の IR(internal/policy)を nftables の行の列へコンパイルする (設計文書 7a.9 節「nftables へのコンパイルの約束」)。
Package nftables は、AdmissionPolicy の IR(internal/policy)を nftables の行の列へコンパイルする (設計文書 7a.9 節「nftables へのコンパイルの約束」)。
nftables/interp
Package interp は、internal/policy/nftables の行の列を実行するテスト専用の解釈器である (設計文書 7a.9 節「fixture の形式と等価性の検査」)。
Package interp は、internal/policy/nftables の行の列を実行するテスト専用の解釈器である (設計文書 7a.9 節「fixture の形式と等価性の検査」)。
Package reconcile holds the transaction skeleton shared by the server and the agent (design.md 7a.2, 7a.3, 7a.7 節): the frontend participant interface, the Runtime, which binds one frontend participant and one dataplane participant in a fixed order, and the Reconciler, which drives the Runtime and keeps the Active state and the generations.
Package reconcile holds the transaction skeleton shared by the server and the agent (design.md 7a.2, 7a.3, 7a.7 節): the frontend participant interface, the Runtime, which binds one frontend participant and one dataplane participant in a fixed order, and the Reconciler, which drives the Runtime and keeps the Active state and the generations.
Package resource は Resource Guard(設計文書 7a.5、7a.10 節)。
Package resource は Resource Guard(設計文書 7a.5、7a.10 節)。
Package vpsd は VPS 側のデーモン。
Package vpsd は VPS 側のデーモン。
admin
Package admin は管理用 API(仕様 5, 11 節)。
Package admin は管理用 API(仕様 5, 11 節)。
agentapi
Package agentapi はエージェント用 API(仕様 5 節)。
Package agentapi はエージェント用 API(仕様 5 節)。
conncheck
Package conncheck は、管理者が UI から行う疎通確認(仕様 10.1 節)。
Package conncheck は、管理者が UI から行う疎通確認(仕様 10.1 節)。
proxyrelay
Package proxyrelay は vpsd 側のプロキシモードの中継(仕様 6.2 節)。
Package proxyrelay は vpsd 側のプロキシモードの中継(仕様 6.2 節)。
store
Package store は vpsd の永続状態を SQLite 1 ファイルに保存する(仕様 9 節)。
Package store は vpsd の永続状態を SQLite 1 ファイルに保存する(仕様 9 節)。
stream
Package stream は vpsd 側の stream(仕様 5.2 節)。
Package stream は vpsd 側の stream(仕様 5.2 節)。

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL