NetworkPacketRecordingDuring

NetworkPacketRecordingDuring[expr]

evaluates expr and returns information on network packets transmitted or received through all network interfaces on your computer during the time of the evaluation, together with the result of the evaluation.

NetworkPacketRecordingDuring[expr,service]

records only packets associated with the specified network service.

NetworkPacketRecordingDuring[expr,port]

records only packets associated with the specified port.

NetworkPacketRecordingDuring[expr,{port1,port2,}]

records only packets associated with any of the ports porti.

NetworkPacketRecordingDuring[expr,spec]

records only packets matching the specification spec.

Details

  • NetworkPacketRecordingDuring has attribute HoldFirst.
  • NetworkPacketRecordingDuring[expr;] will give {packets,Null}.
  • NetworkPacketRecordingDuring[expr,] records packets transmitted or received during the evaluation of expr, whether or not they are actually generated by the evaluation.
  • In NetworkPacketRecordingDuring[,service], possible forms for service include:
  • "name"an IANA named service (e.g. "HTTP")
    entityan entity of type "NetworkService"
  • Entities can be entered using free-form linguistics with .
  • In NetworkPacketRecordingDuring[,ports], network ports can specified as follows:
  • nsingle port number n
    nmin;;nmaxa range of ports from nmin to nmax
    {n1,n2,}a list of ports
  • In NetworkPacketRecordingDuring[,spec], spec can be given in the form keyvalue, or as an association containing multiple keys and values. Possible keys include:
  • "IPAddress"source or destination IP address
    "SourceIPAddress"source IP address
    "DestinationIPAddress"destination IP address
    "IPAddressType"source or destination IP address type (e.g. "IPv4" or "IPv6")
    "SourceIPAddressType"source IP address type
    "DestinationIPAddressType"destination IP address type
    "Port"source or destination port
    "SourcePort"source port
    "DestinationPort"destination port
    "Interface"network interface (e.g. "en0")
    "PCAPFilter"raw PCAP filter specification as a string
  • IP addresses can be given as strings or IPAddress objects.
  • Possible values for the "Interface" key can be any element in $NetworkInterfaces, a list of these or All.
  • Any setting given for "PCAPFilter" overrides all other settings.
  • On Windows computers, SystemInstall["WinPcap"] may be needed before NetworkPacketRecordingDuring is used.
  • NetworkPacketRecording typically requires elevated permissions on Linux and Mac.

Examples

Basic Examples  (3)

Record all network packets during a WolframAlpha call:

In[1]:=
Click for copyable input
Out[1]=

Capture all HTTP packets during a URLRead:

In[1]:=
Click for copyable input
Out[1]=

Record all packets on port 80 or 443:

In[1]:=
Click for copyable input
Out[1]=

See Also

NetworkPacketRecording  $NetworkInterfaces  HostLookup  URLResponseTime  SocketConnect  SystemInstall  AudioRecord

Introduced in 2018
(11.3)