table ip filter { chain ts-input { ip saddr 100.116.93.90 iifname "lo" counter packets 370 bytes 917341 accept iifname "tailscale0" counter packets 6065 bytes 2998028 accept udp dport 41641 counter packets 50512 bytes 6242168 accept ip saddr 100.115.92.0/23 iifname != "tailscale0" counter packets 0 bytes 0 return ip saddr 100.64.0.0/10 iifname != "tailscale0" counter packets 0 bytes 0 drop } chain ts-forward { iifname "tailscale0" counter packets 0 bytes 0 meta mark set mark and 0xff00ffff xor 0x40000 meta mark & 0x00ff0000 == 0x00040000 counter packets 0 bytes 0 accept ip saddr 100.64.0.0/10 oifname "tailscale0" counter packets 0 bytes 0 drop oifname "tailscale0" counter packets 0 bytes 0 accept } chain INPUT { type filter hook input priority filter; policy drop; counter packets 1827871 bytes 736674775 jump ts-input counter packets 60 bytes 7215 jump ufw-before-logging-input counter packets 60 bytes 7215 jump ufw-before-input counter packets 2 bytes 108 jump ufw-after-input counter packets 1 bytes 40 jump ufw-after-logging-input counter packets 1 bytes 40 jump ufw-reject-input counter packets 1 bytes 40 jump ufw-track-input } chain FORWARD { type filter hook forward priority filter; policy drop; counter packets 0 bytes 0 jump ts-forward counter packets 0 bytes 0 jump ufw-before-logging-forward counter packets 0 bytes 0 jump ufw-before-forward counter packets 0 bytes 0 jump ufw-after-forward counter packets 0 bytes 0 jump ufw-after-logging-forward counter packets 0 bytes 0 jump ufw-reject-forward counter packets 0 bytes 0 jump ufw-track-forward } chain ufw-before-logging-input { } chain ufw-before-logging-output { } chain ufw-before-logging-forward { } chain ufw-before-input { iifname "lo" counter packets 1 bytes 180 accept ct state related,established counter packets 54 bytes 5057 accept ct state invalid counter packets 0 bytes 0 jump ufw-logging-deny ct state invalid counter packets 0 bytes 0 drop ip protocol icmp icmp type destination-unreachable counter packets 0 bytes 0 accept ip protocol icmp icmp type time-exceeded counter packets 0 bytes 0 accept ip protocol icmp icmp type parameter-problem counter packets 0 bytes 0 accept ip protocol icmp icmp type echo-request counter packets 0 bytes 0 accept udp sport 67 udp dport 68 counter packets 0 bytes 0 accept counter packets 4 bytes 1938 jump ufw-not-local ip daddr 224.0.0.251 udp dport 5353 counter packets 2 bytes 969 accept ip daddr 239.255.255.250 udp dport 1900 counter packets 0 bytes 0 accept counter packets 2 bytes 969 jump ufw-user-input } chain ufw-before-output { oifname "lo" counter packets 1 bytes 180 accept ct state related,established counter packets 82 bytes 20896 accept counter packets 5 bytes 668 jump ufw-user-output } chain ufw-before-forward { ct state related,established counter packets 0 bytes 0 accept ip protocol icmp icmp type destination-unreachable counter packets 0 bytes 0 accept ip protocol icmp icmp type time-exceeded counter packets 0 bytes 0 accept ip protocol icmp icmp type parameter-problem counter packets 0 bytes 0 accept ip protocol icmp icmp type echo-request counter packets 0 bytes 0 accept counter packets 0 bytes 0 jump ufw-user-forward } chain ufw-after-input { udp dport 137 counter packets 0 bytes 0 jump ufw-skip-to-policy-input udp dport 138 counter packets 0 bytes 0 jump ufw-skip-to-policy-input tcp dport 139 counter packets 0 bytes 0 jump ufw-skip-to-policy-input tcp dport 445 counter packets 0 bytes 0 jump ufw-skip-to-policy-input udp dport 67 counter packets 0 bytes 0 jump ufw-skip-to-policy-input udp dport 68 counter packets 0 bytes 0 jump ufw-skip-to-policy-input fib daddr type broadcast counter packets 1 bytes 68 jump ufw-skip-to-policy-input } chain ufw-after-output { } chain ufw-after-forward { } chain ufw-after-logging-input { limit rate 3/minute burst 10 packets counter packets 0 bytes 0 log prefix "[UFW BLOCK] " } chain ufw-after-logging-output { } chain ufw-after-logging-forward { limit rate 3/minute burst 10 packets counter packets 0 bytes 0 log prefix "[UFW BLOCK] " } chain ufw-reject-input { } chain ufw-reject-output { } chain ufw-reject-forward { } chain ufw-track-input { } chain ufw-track-output { ip protocol tcp ct state new counter packets 1 bytes 60 accept ip protocol udp ct state new counter packets 4 bytes 608 accept } chain ufw-track-forward { } chain OUTPUT { type filter hook output priority filter; policy accept; counter packets 88 bytes 21744 jump ufw-before-logging-output counter packets 88 bytes 21744 jump ufw-before-output counter packets 5 bytes 668 jump ufw-after-output counter packets 5 bytes 668 jump ufw-after-logging-output counter packets 5 bytes 668 jump ufw-reject-output counter packets 5 bytes 668 jump ufw-track-output } chain ufw-logging-deny { ct state invalid limit rate 3/minute burst 10 packets counter packets 0 bytes 0 return limit rate 3/minute burst 10 packets counter packets 0 bytes 0 log prefix "[UFW BLOCK] " } chain ufw-logging-allow { limit rate 3/minute burst 10 packets counter packets 0 bytes 0 log prefix "[UFW ALLOW] " } chain ufw-skip-to-policy-input { counter packets 1 bytes 68 drop } chain ufw-skip-to-policy-output { counter packets 0 bytes 0 accept } chain ufw-skip-to-policy-forward { counter packets 0 bytes 0 drop } chain ufw-not-local { fib daddr type local counter packets 0 bytes 0 return fib daddr type multicast counter packets 2 bytes 969 return fib daddr type broadcast counter packets 2 bytes 969 return limit rate 3/minute burst 10 packets counter packets 0 bytes 0 jump ufw-logging-deny counter packets 0 bytes 0 drop } chain ufw-user-input { iifname "tailscale0" counter packets 0 bytes 0 accept ip saddr 192.168.1.0/24 iifname "wlp1s0" tcp dport 22 counter packets 0 bytes 0 accept ip saddr 192.168.1.0/24 iifname "wlp1s0" udp dport 5353 counter packets 1 bytes 901 accept ip saddr 192.168.1.129 tcp dport 22 counter packets 0 bytes 0 accept } chain ufw-user-output { } chain ufw-user-forward { } chain ufw-user-logging-input { } chain ufw-user-logging-output { } chain ufw-user-logging-forward { } chain ufw-user-limit { limit rate 3/minute burst 5 packets counter packets 0 bytes 0 log prefix "[UFW LIMIT BLOCK] " counter packets 0 bytes 0 reject } chain ufw-user-limit-accept { counter packets 0 bytes 0 accept } } table ip nat { chain ts-postrouting { meta mark & 0x00ff0000 == 0x00040000 counter packets 0 bytes 0 masquerade } chain POSTROUTING { type nat hook postrouting priority srcnat; policy accept; counter packets 51605 bytes 3292542 jump ts-postrouting } } table ip6 filter { chain ts-input { ip6 saddr fd7a:115c:a1e0::283b:5d5b iifname "lo" counter packets 0 bytes 0 accept iifname "tailscale0" counter packets 0 bytes 0 accept udp dport 41641 counter packets 0 bytes 0 accept } chain ts-forward { iifname "tailscale0" counter packets 0 bytes 0 meta mark set mark and 0xff00ffff xor 0x40000 meta mark & 0x00ff0000 == 0x00040000 counter packets 0 bytes 0 accept oifname "tailscale0" counter packets 0 bytes 0 accept } chain INPUT { type filter hook input priority filter; policy drop; counter packets 323132 bytes 66612980 jump ts-input counter packets 6 bytes 1272 jump ufw6-before-logging-input counter packets 6 bytes 1272 jump ufw6-before-input counter packets 0 bytes 0 jump ufw6-after-input counter packets 0 bytes 0 jump ufw6-after-logging-input counter packets 0 bytes 0 jump ufw6-reject-input counter packets 0 bytes 0 jump ufw6-track-input } chain FORWARD { type filter hook forward priority filter; policy drop; counter packets 0 bytes 0 jump ts-forward counter packets 0 bytes 0 jump ufw6-before-logging-forward counter packets 0 bytes 0 jump ufw6-before-forward counter packets 0 bytes 0 jump ufw6-after-forward counter packets 0 bytes 0 jump ufw6-after-logging-forward counter packets 0 bytes 0 jump ufw6-reject-forward counter packets 0 bytes 0 jump ufw6-track-forward } chain ufw6-before-logging-input { } chain ufw6-before-logging-output { } chain ufw6-before-logging-forward { } chain ufw6-before-input { iifname "lo" counter packets 0 bytes 0 accept rt type 0 counter packets 0 bytes 0 drop ct state related,established counter packets 4 bytes 952 accept meta l4proto ipv6-icmp icmpv6 type echo-reply counter packets 0 bytes 0 accept ct state invalid counter packets 2 bytes 320 jump ufw6-logging-deny ct state invalid counter packets 2 bytes 320 drop meta l4proto ipv6-icmp icmpv6 type destination-unreachable counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type packet-too-big counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type time-exceeded counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type parameter-problem counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type echo-request counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type nd-router-solicit ip6 hoplimit 255 counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type nd-router-advert ip6 hoplimit 255 counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type nd-neighbor-solicit ip6 hoplimit 255 counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type nd-neighbor-advert ip6 hoplimit 255 counter packets 0 bytes 0 accept meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 255 counter packets 0 bytes 0 accept meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 255 counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp icmpv6 type mld-listener-query counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp icmpv6 type mld-listener-report counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp icmpv6 type mld-listener-done counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp xt match "icmp6" counter packets 0 bytes 0 accept meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 255 counter packets 0 bytes 0 accept meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 255 counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 1 counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 1 counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 1 counter packets 0 bytes 0 accept meta l4proto ipv6-icmp xt match "icmp6" counter packets 0 bytes 0 accept meta l4proto ipv6-icmp xt match "icmp6" counter packets 0 bytes 0 accept meta l4proto ipv6-icmp xt match "icmp6" counter packets 0 bytes 0 accept meta l4proto ipv6-icmp xt match "icmp6" counter packets 0 bytes 0 accept ip6 saddr fe80::/10 ip6 daddr fe80::/10 udp sport 547 udp dport 546 counter packets 0 bytes 0 accept ip6 daddr ff02::fb udp dport 5353 counter packets 0 bytes 0 accept ip6 daddr ff02::f udp dport 1900 counter packets 0 bytes 0 accept counter packets 0 bytes 0 jump ufw6-user-input } chain ufw6-before-output { oifname "lo" counter packets 0 bytes 0 accept rt type 0 counter packets 0 bytes 0 drop ct state related,established counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type destination-unreachable counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type packet-too-big counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type time-exceeded counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type parameter-problem counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type echo-request counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type echo-reply counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type nd-router-solicit ip6 hoplimit 255 counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type nd-neighbor-advert ip6 hoplimit 255 counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type nd-neighbor-solicit ip6 hoplimit 255 counter packets 2 bytes 144 accept meta l4proto ipv6-icmp icmpv6 type nd-router-advert ip6 hoplimit 255 counter packets 0 bytes 0 accept meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 255 counter packets 0 bytes 0 accept meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 255 counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp icmpv6 type mld-listener-query counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp icmpv6 type mld-listener-report counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp icmpv6 type mld-listener-done counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp xt match "icmp6" counter packets 0 bytes 0 accept meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 255 counter packets 0 bytes 0 accept meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 255 counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 1 counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 1 counter packets 0 bytes 0 accept ip6 saddr fe80::/10 meta l4proto ipv6-icmp xt match "icmp6" ip6 hoplimit 1 counter packets 0 bytes 0 accept counter packets 2 bytes 344 jump ufw6-user-output } chain ufw6-before-forward { rt type 0 counter packets 0 bytes 0 drop ct state related,established counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type destination-unreachable counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type packet-too-big counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type time-exceeded counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type parameter-problem counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type echo-request counter packets 0 bytes 0 accept meta l4proto ipv6-icmp icmpv6 type echo-reply counter packets 0 bytes 0 accept counter packets 0 bytes 0 jump ufw6-user-forward } chain ufw6-after-input { udp dport 137 counter packets 0 bytes 0 jump ufw6-skip-to-policy-input udp dport 138 counter packets 0 bytes 0 jump ufw6-skip-to-policy-input tcp dport 139 counter packets 0 bytes 0 jump ufw6-skip-to-policy-input tcp dport 445 counter packets 0 bytes 0 jump ufw6-skip-to-policy-input udp dport 546 counter packets 0 bytes 0 jump ufw6-skip-to-policy-input udp dport 547 counter packets 0 bytes 0 jump ufw6-skip-to-policy-input } chain ufw6-after-output { } chain ufw6-after-forward { } chain ufw6-after-logging-input { limit rate 3/minute burst 10 packets counter packets 0 bytes 0 log prefix "[UFW BLOCK] " } chain ufw6-after-logging-output { } chain ufw6-after-logging-forward { limit rate 3/minute burst 10 packets counter packets 0 bytes 0 log prefix "[UFW BLOCK] " } chain ufw6-reject-input { } chain ufw6-reject-output { } chain ufw6-reject-forward { } chain ufw6-track-input { } chain ufw6-track-output { meta l4proto tcp ct state new counter packets 0 bytes 0 accept meta l4proto udp ct state new counter packets 2 bytes 344 accept } chain ufw6-track-forward { } chain OUTPUT { type filter hook output priority filter; policy accept; counter packets 4 bytes 488 jump ufw6-before-logging-output counter packets 4 bytes 488 jump ufw6-before-output counter packets 2 bytes 344 jump ufw6-after-output counter packets 2 bytes 344 jump ufw6-after-logging-output counter packets 2 bytes 344 jump ufw6-reject-output counter packets 2 bytes 344 jump ufw6-track-output } chain ufw6-logging-deny { ct state invalid limit rate 3/minute burst 10 packets counter packets 2 bytes 320 return limit rate 3/minute burst 10 packets counter packets 0 bytes 0 log prefix "[UFW BLOCK] " } chain ufw6-logging-allow { limit rate 3/minute burst 10 packets counter packets 0 bytes 0 log prefix "[UFW ALLOW] " } chain ufw6-skip-to-policy-input { counter packets 0 bytes 0 drop } chain ufw6-skip-to-policy-output { counter packets 0 bytes 0 accept } chain ufw6-skip-to-policy-forward { counter packets 0 bytes 0 drop } chain ufw6-user-input { iifname "tailscale0" counter packets 0 bytes 0 accept } chain ufw6-user-output { } chain ufw6-user-forward { } chain ufw6-user-logging-input { } chain ufw6-user-logging-output { } chain ufw6-user-logging-forward { } chain ufw6-user-limit { limit rate 3/minute burst 5 packets counter packets 0 bytes 0 log prefix "[UFW LIMIT BLOCK] " counter packets 0 bytes 0 reject } chain ufw6-user-limit-accept { counter packets 0 bytes 0 accept } } table ip6 nat { chain ts-postrouting { meta mark & 0x00ff0000 == 0x00040000 counter packets 0 bytes 0 xt target "MASQUERADE" } chain POSTROUTING { type nat hook postrouting priority srcnat; policy accept; counter packets 33126 bytes 2880233 jump ts-postrouting } } table ip mangle { chain PREROUTING { type filter hook prerouting priority mangle; policy accept; ct state related,established counter packets 1617525 bytes 667504416 meta mark set ct mark and 0xff0000 } chain OUTPUT { type route hook output priority mangle; policy accept; ct state new meta mark & 0x00ff0000 != 0x00000000 counter packets 121317 bytes 15070205 ct mark set mark and 0xff0000 } } table ip6 mangle { chain PREROUTING { type filter hook prerouting priority mangle; policy accept; ct state related,established counter packets 95632 bytes 21386172 meta mark set ct mark and 0xff0000 } chain OUTPUT { type route hook output priority mangle; policy accept; ct state new meta mark & 0x00ff0000 != 0x00000000 counter packets 80350 bytes 10585680 ct mark set mark and 0xff0000 } }