How to make NEFilterPacketProvider listen to all interfaces?

I'm using FilterPacketProvider, and I'm simply printing out packet information and comparing this to the NEFilterDataProvider Flow output.


When in an non-vpn environment I see expected results:

```

From DataProvider:

New flow observed : [INTERNAL_IP]:50897->17.253.37.207:80 (Outbound)[TCP]

From PacketProvider:

2020-04-21 10:50:26 : [INTERNAL_IP]~50897 -> 17.253.37.207~80 [6]

2020-04-21 10:50:26 : 17.253.37.207~80 -> [INTERNAL_IP]~50897 [6]

2020-04-21 10:50:26 : 17.253.37.207~80 -> [INTERNAL_IP]~50897 [6]

2020-04-21 10:50:26 : 17.253.37.207~80 -> [INTERNAL_IP]~50897 [6]

...

```


However when using a VPN I get the following issue:

```

From DataProvider:

2020-04-21 11:10:48 : [DarkIPC] [DEBUG] New flow observed : [VPN_IP]:51422->[EXTERNAL]:3128 (Outbound)[TCP]

From PacketProvider:

2020-04-21 11:10:48 : [INTERNAL_IP]~57770 -> 194.72.254.220~443 [17]

2020-04-21 11:10:48 : [EXTERNAL_VPN]~443 -> [INTERNAL_IP]~57770 [17]

2020-04-21 11:10:48 : [EXTERNAL_VPN]~443 -> [INTERNAL_IP]~57770 [17]

2020-04-21 11:10:48 : [EXTERNAL_VPN]~443 -> [INTERNAL_IP]~57770 [17]

2020-04-21 11:10:48 : [EXTERNAL_VPN]~443 -> [INTERNAL_IP]~57770 [17]

```


This looks like the flow is being created from the TCP VPN connection, while the packets provided seem to be UDP communication between the internal interface and the external VPN endpoint.


I NEVER see flows from EXTERNAL_VPN to INTERNAL_IP and NEVER see packets from External addresses (172.253.37.207).


Is there any way of getting All packets created from the packet provider (including the vpn flows) ?


Or is there a way of solving this problem https://forums.developer.apple.com/thread/131545


Thank you.

BR