-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbrakebear.yaml
More file actions
137 lines (126 loc) · 3.78 KB
/
brakebear.yaml
File metadata and controls
137 lines (126 loc) · 3.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# Example configuration for BrakeBear
log_level: "info"
docker_containers:
# Example container configuration with container name
- name: "test-limited"
download_rate: 1Mbps
upload_rate: 500kbps
latency: 50ms
jitter: 10ms
loss: 0.1%
# Example container configuration with labels
- labels:
environment: "production"
download_rate: 10Mbps
upload_rate: 5Mbps
latency: 100ms
# Example container configuration with container name
- name: "test-high-latency"
latency: 500ms
jitter: 50ms
loss: 1%
# Example with network exclusions
- name: "test-with-exclusions"
download_rate: 1Mbps
upload_rate: 500kbps
latency: 50ms
jitter: 10ms
loss: 0.1%
exclusions:
cidr:
ranges:
- "192.168.1.0/24" # IPv4 private range
- "10.0.0.0/8" # IPv4 private range
- "2001:db8::/32" # IPv6 documentation range
- "fc00::/7" # IPv6 Unique Local Addresses
# Example with private network exclusions (RFC1918 + IPv6)
- name: "test-private-exclusions"
download_rate: 1Mbps
upload_rate: 500kbps
exclusions:
private-networks: true # Automatically excludes 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, fc00::/7, fe80::/10
# Example with DNS-based network exclusions
- name: "test-dns-exclusions"
download_rate: 1Mbps
upload_rate: 500kbps
latency: 100ms
exclusions:
private-networks: true
dns:
names:
- "api.github.com"
- "registry.npmjs.org"
- "cdn.jsdelivr.net"
check_interval: "10m"
# Example with port exclusions
- name: "test-port-exclusions"
download_rate: 1Mbps
upload_rate: 500kbps
exclusions:
ports:
tcp: ["80", "443"]
# Example with Docker network exclusions (specific networks)
- name: "test-docker-network-exclusions"
download_rate: 5Mbps
upload_rate: 2Mbps
latency: 75ms
exclusions:
docker-networks:
names: ["shared-network", "database-network"] # Exclude specific Docker networks
# Example with Docker network exclusions (wildcard - all bridge networks)
- name: "test-docker-wildcard-exclusions"
download_rate: 10Mbps
upload_rate: 5Mbps
latency: 50ms
exclusions:
docker-networks:
names: ["*"] # Exclude all Docker bridge networks
# IPv6 dual-stack example with comprehensive exclusions
- name: "ipv6-dual-stack-comprehensive"
download_rate: 50Mbps
upload_rate: 25Mbps
latency: 30ms
jitter: 10ms
loss: 0.05%
exclusions:
private-networks: true # Includes both IPv4 RFC1918 and IPv6 ULA/Link-Local
cidr:
ranges:
# IPv4 ranges
- "203.0.113.0/24" # IPv4 TEST-NET-3
- "198.51.100.0/24" # IPv4 TEST-NET-2
- "192.0.2.100/32" # Specific IPv4 host
# IPv6 ranges
- "2001:db8::/32" # IPv6 documentation prefix
- "2001:db8:85a3::/64" # Specific IPv6 subnet
- "2001:db8::100/128" # Specific IPv6 host
dns:
names:
- "google.com" # Dual-stack hostname
- "cloudflare.com" # Dual-stack hostname
- "ipv6.google.com" # IPv6-preferred hostname
check_interval: "15m"
ports:
tcp: ["80", "443", "22", "8080-8090"]
udp: ["53", "123", "546-547"] # Includes DHCPv6 ports
docker-networks:
names: ["ipv6-enabled-network", "dual-stack-network"]
# Example with combined exclusions including Docker networks
- name: "test-combined-exclusions"
download_rate: 2Mbps
upload_rate: 1Mbps
latency: 100ms
jitter: 25ms
loss: 0.2%
exclusions:
private-networks: true
cidr:
ranges: ["203.0.113.0/24", "2001:db8::/32"] # IPv4 and IPv6 documentation ranges
dns:
names: ["internal-api.company.com"]
check_interval: "5m"
ports:
tcp: ["22", "80", "443"]
udp: ["53"]
docker-networks:
names: ["management-network"]