Merhaba,
macOS'te ipfw yıllar önce kaldırıldı, onun yerine FreeBSD'deki gibi PF (Packet Filter) var, zaten macOS de BSD türevi olduğu için altyapı tanıdık gelecektir.
Zapret macOS'te şöyle çalışıyor:
- PF anchor + rdr: Kurulumda pf.conf'a bir zapret anchor'ı ekleniyor ve pfctl ile bir rdr (redirect) kuralı uygulanıyor. Bu kural, giden TCP 80/443 trafiğini yerel bir porta (tpws'in dinlediği 127.0.0.1:988) yönlendiriyor.
- tpws (transparent proxy): Trafik tpws'e düşünce, tpws kullanıcı-uzayında çalışan şeffaf bir proxy olarak DPI-aşma işini yapıyor TLS ClientHello'yu parçalama (--tlsrec), segmentleri sırasız gönderme (--disorder) gibi yöntemlerle SNI tabanlı DPI'ı atlatıyor. Sadece hostlist'teki alan adlarına uyguluyor, gerisi dokunulmadan geçiyor.
Yani Linux'taki gibi nfqws/netfilter yok, macOS tarafı tamamen PF (rdr) + tpws ikilisiyle yürüyor. Kavram olarak senin FreeBSD'deki ipfw + tpws kurgunun aynısı, sadece firewall katmanı ipfw yerine pf.
Uygulama bütün bu PF kurallarını ve tpws servisini senin yerine kuruyor/kaldırıyor ayrıca tpws çökerse PF yönlendirmesi açık kalıp interneti kesmesin diye bir watchdog ile otomatik toparlıyor.