Winamp Command Line



  1. In order to fix that I need to do one of the following. Change a playback device from the command line. (then I can run it before calling the Winamp). Specify a playback device in the command line for Winamp. Specify a playback device in 'Winamp.ini'. Forget about Winamp, choose another player, for.
  2. Winamp 5 Full is part of these download collections: M3U Player, APE Players, AAC Player, Play MP3. Winamp 5 Full was reviewed by Bogdan Popa. SYSTEM REQUIREMENTS. 500MHz Pentium III.

NAME

tcpdump - dump traffic on a network

SYNOPSIS

AMP WinOFF is an utility for scheduling the shutdown of Windows computers, with several shutdown conditions and fully configurable. Some of its features are.

tcpdump[-AdDeflLnNOpqRStuUvxX] [-ccount]
[-Cfile_size] [-Ffile]
[-iinterface][-mmodule][-Msecret]
[-rfile][-ssnaplen][-Ttype][-wfile]
[-Wfilecount]
[-Espi@ipaddr algo:secret,..]
[-ydatalinktype][-Zuser]
[expression]Winamp Command Line

DESCRIPTION

Tcpdump prints out a description of the contents of packets on anetwork interface that match the boolean expression. It can alsobe run with the-wflag, which causes it to save the packet data to a file for lateranalysis, and/or with the-rflag, which causes it to read from a saved packet file rather than toread packets from a network interface. In all cases, only packets thatmatchexpressionwill be processed bytcpdump.

Tcpdumpwill, if not run with the-cflag, continue capturing packets until it is interrupted by a SIGINTsignal (generated, for example, by typing your interrupt character,typically control-C) or a SIGTERM signal (typically generated with thekill(1)command); if run with the-cflag, it will capture packets until it is interrupted by a SIGINT orSIGTERM signal or the specified number of packets have been processed.

Winamp Command Line

Whentcpdumpfinishes capturing packets, it will report counts of:

tcpdumphas received and processed);
packets ``received by filter' (the meaning of this depends on the OS onwhich you're runningtcpdump,and possibly on the way the OS was configured - if a filter wasspecified on the command line, on some OSes it counts packets regardlessof whether they were matched by the filter expression and, even if theywere matched by the filter expression, regardless of whethertcpdumphas read and processed them yet, on other OSes it counts only packets that werematched by the filter expression regardless of whethertcpdumphas read and processed them yet, and on other OSes it counts onlypackets that were matched by the filter expression and were processed bytcpdump);
packets ``dropped by kernel' (this is the number of packets that weredropped, due to a lack of buffer space, by the packet capture mechanismin the OS on whichtcpdumpis running, if the OS reports that information to applications; if not,it will be reported as 0).

On platforms that support the SIGINFO signal, such as most BSDs(including Mac OS X) and Digital/Tru64 UNIX, it will report those countswhen it receives a SIGINFO signal (generated, for example, by typingyour ``status' character, typically control-T, although on someplatforms, such as Mac OS X, the ``status' character is not set bydefault, so you must set it withstty(1)in order to use it) and will continue capturing packets.

Reading packets from a network interface may require that you havespecial privileges:

Under HP-UX with DLPI:
You must be root ortcpdumpmust be installed setuid to root.
Under IRIX with snoop:
You must be root ortcpdumpmust be installed setuid to root.
Under Linux:
You must be root ortcpdumpmust be installed setuid to root (unless your distribution has a kernelthat supports capability bits such as CAP_NET_RAW and code to allowthose capability bits to be given to particular accounts and to causethose bits to be set on a user's initial processes when they log in, inwhich case you must have CAP_NET_RAW in order to capture andCAP_NET_ADMIN to enumerate network devices with, for example, the-Dflag).
Under ULTRIX and Digital UNIX/Tru64 UNIX:
Any user may capture network traffic withtcpdump.However, no user (not even the super-user) can capture in promiscuousmode on an interface unless the super-user has enabled promiscuous-modeoperation on that interface usingpfconfig(8),and no user (not even the super-user) can capture unicast trafficreceived by or sent by the machine on an interface unless the super-userhas enabled copy-all-mode operation on that interface usingpfconfig,sousefulpacket capture on an interface probably requires that eitherpromiscuous-mode or copy-all-mode operation, or both modes ofoperation, be enabled on that interface.
Under BSD (this includes Mac OS X):
You must have read access to/dev/bpf*.On BSDs with a devfs (this includes Mac OS X), this might involve morethan just having somebody with super-user access setting the ownershipor permissions on the BPF devices - it might involve configuring devfsto set the ownership or permissions every time the system is booted,if the system even supports that; if it doesn't support that, you mighthave to find some other way to make that happen at boot time.

Reading a saved packet file doesn't require special privileges.

OPTIONS

-A
Print each packet (minus its link level header) in ASCII. Handy forcapturing web pages.
-c
Exit after receiving count packets.
-C
Before writing a raw packet to a savefile, check whether the file iscurrently larger than file_size and, if so, close the currentsavefile and open a new one. Savefiles after the first savefile willhave the name specified with the-wflag, with a number after it, starting at 1 and continuing upward.The units of file_size are millions of bytes (1,000,000 bytes,not 1,048,576 bytes).
-d
Dump the compiled packet-matching code in a human readable form tostandard output and stop.
-dd
Dump packet-matching code as aCprogram fragment.
-ddd
Dump packet-matching code as decimal numbers (preceded with a count).
-D
Print the list of the network interfaces available on the system and onwhichtcpdumpcan capture packets. For each network interface, a number and aninterface name, possibly followed by a text description of theinterface, is printed. The interface name or the number can be suppliedto the-iflag to specify an interface on which to capture.
This can be useful on systems that don't have a command to list them(e.g., Windows systems, or UNIX systems lackingifconfig -a);the number can be useful on Windows 2000 and later systems, where theinterface name is a somewhat complex string.
The-Dflag will not be supported iftcpdumpwas built with an older version oflibpcapthat lacks thepcap_findalldevs()function.
-e
Print the link-level header on each dump line.
-E
Use spi@ipaddr algo:secret for decrypting IPsec ESP packets thatare addressed to addr and contain Security Parameter Index valuespi. This combination may be repeated with comma or newline seperation.
Note that setting the secret for IPv4 ESP packets is supported at this time.
Algorithms may bedes-cbc,3des-cbc,blowfish-cbc,rc3-cbc,cast128-cbc, ornone.The default is des-cbc.The ability to decrypt packets is only present if tcpdump was compiledwith cryptography enabled.
secret is the ASCII text for ESP secret key. If preceeded by 0x, then a hex value will be read.
The option assumes RFC2406 ESP, not RFC1827 ESP.The option is only for debugging purposes, andthe use of this option with a true `secret' key is discouraged.By presenting IPsec secret key onto command lineyou make it visible to others, viaps(1)and other occasions.
In addition to the above syntax, the syntax file name may be usedto have tcpdump read the provided file in. The file is opened upon receiving the first ESP packet, so any special permissions that tcpdumpmay have been given should already have been given up.
-f
Print `foreign' IPv4 addresses numerically rather than symbolically(this option is intended to get around serious brain damage inSun's NIS server --- usually it hangs forever translating non-localinternet numbers).
The test for `foreign' IPv4 addresses is done using the IPv4 address andnetmask of the interface on which capture is being done. If thataddress or netmask are not available, available, either because theinterface on which capture is being done has no address or netmask orbecause the capture is being done on the Linux 'any' interface, whichcan capture on more than one interface, this option will not workcorrectly.
-F
Use file as input for the filter expression.An additional expression given on the command line is ignored.
-i
Listen on interface.If unspecified, tcpdump searches the system interface list for thelowest numbered, configured up interface (excluding loopback).Ties are broken by choosing the earliest match.
On Linux systems with 2.2 or later kernels, aninterfaceargument of ``any' can be used to capture packets from all interfaces.Note that captures on the ``any' device will not be done in promiscuousmode.
If the-Dflag is supported, an interface number as printed by that flag can beused as theinterfaceargument.
-l
Make stdout line buffered.Useful if you want to see the datawhile capturing it.E.g.,
``tcpdump -l | tee dat' or``tcpdump -l > dat & tail -f dat'.
-L
List the known data link types for the interface and exit.
-m
Load SMI MIB module definitions from file module.This optioncan be used several times to load several MIB modules into tcpdump.
-M
Use secret as a shared secret for validating the digests found inTCP segments with the TCP-MD5 option (RFC 2385), if present.
-n
Don't convert addresses (i.e., host addresses, port numbers, etc.) to names.
-N
Don't print domain name qualification of host names.E.g.,if you give this flag then tcpdump will print ``nic'instead of ``nic.ddn.mil'.
-O
Do not run the packet-matching code optimizer.This is useful onlyif you suspect a bug in the optimizer.
-p
Don't put the interfaceinto promiscuous mode.Note that the interface might be in promiscuousmode for some other reason; hence, `-p' cannot be used as an abbreviation for`ether host {local-hw-addr} or ether broadcast'.
-q
Quick (quiet?) output.Print less protocol information so outputlines are shorter.
-R
Assume ESP/AH packets to be based on old specification (RFC1825 to RFC1829).If specified, tcpdump will not print replay prevention field.Since there is no protocol version field in ESP/AH specification,tcpdump cannot deduce the version of ESP/AH protocol.
-r
Read packets from file (which was created with the-woption).Standard input is used if file is ``-'.
-S
Print absolute, rather than relative, TCP sequence numbers.
-s
Snarf snaplen bytes of data from each packet rather than thedefault of 68 (with SunOS's NIT, the minimum is actually 96).68 bytes is adequate for IP, ICMP, TCPand UDP but may truncate protocol information from name server and NFSpackets (see below).Packets truncated because of a limited snapshotare indicated in the output with ``[|proto]', where protois the name of the protocol level at which the truncation has occurred.Note that taking larger snapshots both increasesthe amount of time it takes to process packets and, effectively,decreases the amount of packet buffering.This may cause packets to belost.You should limit snaplen to the smallest number that willcapture the protocol information you're interested in.Settingsnaplen to 0 means use the required length to catch whole packets.
-T
Force packets selected by 'expression' to be interpreted thespecified type.Currently known types areaodv (Ad-hoc On-demand Distance Vector protocol),cnfp (Cisco NetFlow protocol),rpc (Remote Procedure Call),rtp (Real-Time Applications protocol),rtcp (Real-Time Applications control protocol),snmp (Simple Network Management Protocol),tftp (Trivial File Transfer Protocol),vat (Visual Audio Tool),andwb (distributed White Board).
-t
Don't print a timestamp on each dump line.
-tt
Print an unformatted timestamp on each dump line.
-ttt
Print a delta (in micro-seconds) between current and previous lineon each dump line.
-tttt
Print a timestamp in default format proceeded by date on each dump line.
-u
Print undecoded NFS handles.
-U
Make output saved via the-woption ``packet-buffered'; i.e., as each packet is saved, it will bewritten to the output file, rather than being written only when theoutput buffer fills.
The-Uflag will not be supported iftcpdumpwas built with an older version oflibpcapthat lacks thepcap_dump_flush()function.
-v
When parsing and printing, produce (slightly more) verbose output.For example, the time to live,identification, total length and options in an IP packet are printed.Also enables additional packet integrity checks such as verifying theIP and ICMP header checksum.
When writing to a file with the-woption, report, every 10 seconds, the number of packets captured.
-vv
Even more verbose output.For example, additional fields areprinted from NFS reply packets, and SMB packets are fully decoded.
-vvv
Even more verbose output.For example,telnet SB .. SE optionsare printed in full.With-XTelnet options are printed in hex as well.
-w
Write the raw packets to file rather than parsing and printingthem out.They can later be printed with the -r option.Standard output is used if file is ``-'.
-W
Used in conjunction with the -C option, this will limit the numberof files created to the specified number, and begin overwriting filesfrom the beginning, thus creating a 'rotating' buffer. In addition, it will namethe files with enough leading 0s to support the maximum number offiles, allowing them to sort correctly.
-x
When parsing and printing,in addition to printing the headers of each packet, print the data ofeach packet (minus its link level header) in hex. The smaller of the entire packet orsnaplenbytes will be printed. Note that this is the entire link-layerpacket, so for link layers that pad (e.g. Ethernet), the padding byteswill also be printed when the higher layer packet is shorter than therequired padding.
-xx
When parsing and printing,in addition to printing the headers of each packet, print the data ofeach packet,includingits link level header, in hex.
-X
When parsing and printing,in addition to printing the headers of each packet, print the data ofeach packet (minus its link level header) in hex and ASCII.This is very handy for analysing new protocols.
-XX
When parsing and printing,in addition to printing the headers of each packet, print the data ofeach packet,includingits link level header, in hex and ASCII.
-y
Set the data link type to use while capturing packets to datalinktype.
-Z
Drops privileges (if root) and changes user ID touserand the group ID to the primary group ofuser.
This behavior can also be enabled by default at compile time.
expression
selects which packets will be dumped.If no expressionis given, all packets on the net will be dumped.Otherwise,only packets for which expression is `true' will be dumped.

The expression consists of one or moreprimitives.Primitives usually consist of anid(name or number) preceded by one or more qualifiers.There are threedifferent kinds of qualifier:

hostis assumed.
dir
qualifiers specify a particular transfer direction to and/or fromid.Possible directions aresrc,dst,src or dstandsrc anddst.E.g., `src foo', `dst net 128.3', `src or dst port ftp-data'.Ifthere is no dir qualifier,src or dstis assumed.For some link layers, such as SLIP and the ``cooked' Linux capture modeused for the ``any' device and for some other device types, theinboundandoutboundqualifiers can be used to specify a desired direction.
proto
qualifiers restrict the match to a particular protocol.Possibleprotos are:ether,fddi,tr,wlan,ip,ip6,arp,rarp,decnet,tcpandudp.E.g., `ether src foo', `arp net 128.3', `tcp port 21', `udp portrange7000-7009'.If there isno proto qualifier, all protocols consistent with the type areassumed.E.g., `src foo' means `(ip or arp or rarp) src foo'(except the latter is not legal syntax), `net bar' means `(ip orarp or rarp) net bar' and `port 53' means `(tcp or udp) port 53'.

[`fddi' is actually an alias for `ether'; the parser treats themidentically as meaning ``the data link level used on the specifiednetwork interface.' FDDI headers contain Ethernet-like sourceand destination addresses, and often contain Ethernet-like packettypes, so you can filter on these FDDI fields just as with theanalogous Ethernet fields.FDDI headers also contain other fields,but you cannot name them explicitly in a filter expression.

Similarly, `tr' and `wlan' are aliases for `ether'; the previousparagraph's statements about FDDI headers also apply to Token Ringand 802.11 wireless LAN headers. For 802.11 headers, the destinationaddress is the DA field and the source address is the SA field; theBSSID, RA, and TA fields aren't tested.]

In addition to the above, there are some special `primitive' keywordsthat don't follow the pattern:gateway,broadcast,less,greaterand arithmetic expressions.All of these are described below.

More complex filter expressions are built up by using the wordsand,orandnotto combine primitives.E.g., `host foo and not port ftp and not port ftp-data'.To save typing, identical qualifier lists can be omitted.E.g.,`tcp dst port ftp or ftp-data or domain' is exactly the same as`tcp dst port ftp or tcp dst port ftp-data or tcp dst port domain'.

Allowable primitives are:

dst host host
True if the IPv4/v6 destination field of the packet is host,which may be either an address or a name.
src host host
True if the IPv4/v6 source field of the packet is host.
host host
True if either the IPv4/v6 source or destination of the packet is host.
Any of the above host expressions can be prepended with the keywords,ip, arp, rarp, or ip6 as in:which is equivalent to:If host is a name with multiple IP addresses, each address willbe checked for a match.
ether dst ehost
True if the Ethernet destination address is ehost.Ehostmay be either a name from /etc/ethers or a number (seeethers(3N)for numeric format).
ether src ehost
True if the Ethernet source address is ehost.
ether host ehost
True if either the Ethernet source or destination address is ehost.
gatewayhost
True if the packet used host as a gateway.I.e., the Ethernetsource or destination address was host but neither the IP sourcenor the IP destination was host.Host must be a name andmust be found both by the machine's host-name-to-IP-address resolutionmechanisms (host name file, DNS, NIS, etc.) and by the machine'shost-name-to-Ethernet-address resolution mechanism (/etc/ethers, etc.).(An equivalent expression iswhich can be used with either names or numbers for host / ehost.)This syntax does not work in IPv6-enabled configuration at this moment.
dst net net
True if the IPv4/v6 destination address of the packet has a networknumber of net.Net may be either a name from the networks database(/etc/networks, etc.) or a network number.An IPv4 network number can be written as a dotted quad (e.g., 192.168.1.0),dotted triple (e.g., 192.168.1), dotted pair (e.g, 172.16), or singlenumber (e.g., 10); the netmask is 255.255.255.255 for a dotted quad(which means that it's really a host match), 255.255.255.0 for a dottedtriple, 255.255.0.0 for a dotted pair, or 255.0.0.0 for a single number.An IPv6 network number must be written out fully; the netmask isff:ff:ff:ff:ff:ff:ff:ff, so IPv6 'network' matches are really alwayshost matches, and a network match requires a netmask length.
src net net
True if the IPv4/v6 source address of the packet has a networknumber of net.
net net
True if either the IPv4/v6 source or destination address of the packet has a networknumber of net.
net netmask netmask
True if the IPv4 address matches net with the specific netmask.May be qualified with src or dst.Note that this syntax is not valid for IPv6 net.
net net/len
True if the IPv4/v6 address matches net with a netmask lenbits wide.May be qualified with src or dst.
dst port port
True if the packet is ip/tcp, ip/udp, ip6/tcp or ip6/udp and has adestination port value of port.The port can be a number or a name used in /etc/services (seetcp(4P)andudp(4P)).If a name is used, both the portnumber and protocol are checked.If a number or ambiguous name is used,only the port number is checked (e.g., dst port 513 will print bothtcp/login traffic and udp/who traffic, and port domain will printboth tcp/domain and udp/domain traffic).
src port port
True if the packet has a source port value of port.
port port
True if either the source or destination port of the packet is port.
dst portrange port1-port2
True if the packet is ip/tcp, ip/udp, ip6/tcp or ip6/udp and has adestination port value between port1 and port2.port1andport2are interpreted in the same fashion as theportparameter forport.
src portrange port1-port2
True if the packet has a source port value between port1 andport2.
portrange port1-port2
True if either the source or destination port of the packet is betweenport1 and port2.
Any of the above port or port range expressions can be prepended withthe keywords, tcp or udp, as in:which matches only tcp packets whose source port is port.
less length
True if the packet has a length less than or equal to length.This is equivalent to:
greater length
True if the packet has a length greater than or equal to length.This is equivalent to:
ip proto protocol
True if the packet is an IPv4 packet (seeip(4P))of protocol type protocol.Protocol can be a number or one of the namesicmp, icmp6, igmp, igrp, pim, ah,esp, vrrp, udp, or tcp.Note that the identifiers tcp, udp, and icmp are alsokeywords and must be escaped via backslash (), which is in the C-shell.Note that this primitive does not chase the protocol header chain.
ip6 proto protocol
True if the packet is an IPv6 packet of protocol type protocol.Note that this primitive does not chase the protocol header chain.
ip6 protochain protocol
True if the packet is IPv6 packet,and contains protocol header with type protocolin its protocol header chain.For example,matches any IPv6 packet with TCP protocol header in the protocol header chain.The packet may contain, for example,authentication header, routing header, or hop-by-hop option header,between IPv6 header and TCP header.The BPF code emitted by this primitive is complex andcannot be optimized by BPF optimizer code in tcpdump,so this can be somewhat slow.
ip protochain protocol
Equivalent to ip6 protochain protocol, but this is for IPv4.
ether broadcast
True if the packet is an Ethernet broadcast packet.The etherkeyword is optional.
ip broadcast
True if the packet is an IPv4 broadcast packet.It checks for both the all-zeroes and all-ones broadcast conventions,and looks up the subnet mask on the interface on which the capture isbeing done.
If the subnet mask of the interface on which the capture is being doneis not available, either because the interface on which capture is beingdone has no netmask or because the capture is being done on the Linux'any' interface, which can capture on more than one interface, thischeck will not work correctly.
ether multicast
True if the packet is an Ethernet multicast packet.The etherkeyword is optional.This is shorthand for `ether[0] & 1 != 0'.
ip multicast
True if the packet is an IPv4 multicast packet.
ip6 multicast
True if the packet is an IPv6 multicast packet.
ether proto protocol
True if the packet is of ether type protocol.Protocol can be a number or one of the namesip, ip6, arp, rarp, atalk, aarp,decnet, sca, lat, mopdl, moprc,iso, stp, ipx, or netbeui.Note these identifiers are also keywordsand must be escaped via backslash ().
[In the case of FDDI (e.g., `fddi protocol arp'), Token Ring(e.g., `tr protocol arp'), and IEEE 802.11 wireless LANS (e.g.,`wlan protocol arp'), for most of those protocols, theprotocol identification comes from the 802.2 Logical Link Control (LLC)header, which is usually layered on top of the FDDI, Token Ring, or802.11 header.
When filtering for most protocol identifiers on FDDI, Token Ring, or802.11, tcpdump checks only the protocol ID field of an LLC headerin so-called SNAP format with an Organizational Unit Identifier (OUI) of0x000000, for encapsulated Ethernet; it doesn't check whether the packetis in SNAP format with an OUI of 0x000000.The exceptions are:
iso
tcpdump checks the DSAP (Destination Service Access Point) andSSAP (Source Service Access Point) fields of the LLC header;
stp and netbeui
tcpdump checks the DSAP of the LLC header;
atalk
tcpdump checks for a SNAP-format packet with an OUI of 0x080007and the AppleTalk etype.
In the case of Ethernet, tcpdump checks the Ethernet type fieldfor most of those protocols. The exceptions are:
iso, stp, and netbeui
tcpdump checks for an 802.3 frame and then checks the LLC header asit does for FDDI, Token Ring, and 802.11;
atalk
tcpdump checks both for the AppleTalk etype in an Ethernet frame andfor a SNAP-format packet as it does for FDDI, Token Ring, and 802.11;
aarp
tcpdump checks for the AppleTalk ARP etype in either an Ethernetframe or an 802.2 SNAP frame with an OUI of 0x000000;
ipx
tcpdump checks for the IPX etype in an Ethernet frame, the IPXDSAP in the LLC header, the 802.3-with-no-LLC-header encapsulation ofIPX, and the IPX etype in a SNAP frame.
decnet src host
True if the DECNET source address ishost,which may be an address of the form ``10.123', or a DECNET hostname.[DECNET host name support is only available on ULTRIX systemsthat are configured to run DECNET.]
decnet dst host
True if the DECNET destination address ishost.
decnet host host
True if either the DECNET source or destination address ishost.
ifname interface
True if the packet was logged as coming from the specified interface (appliesonly to packets logged by OpenBSD'spf(4)).
on interface
Synonymous with theifnamemodifier.
rnr num
True if the packet was logged as matching the specified PF rule number(applies only to packets logged by OpenBSD'spf(4)).
rulenum num
Synonomous with thernrmodifier.
reason code
True if the packet was logged with the specified PF reason code. The knowncodes are:match,bad-offset,fragment,short,normalize,andmemory(applies only to packets logged by OpenBSD'spf(4)).
rset name
True if the packet was logged as matching the specified PF rulesetname of an anchored ruleset (applies only to packets logged bypf(4)).
ruleset name
Synonomous with thersetmodifier.
srnr num
True if the packet was logged as matching the specified PF rule numberof an anchored ruleset (applies only to packets logged bypf(4)).
subrulenum num
Synonomous with thesrnrmodifier.
action act
True if PF took the specified action when the packet was logged. Known actionsare:passandblock(applies only to packets logged by OpenBSD'spf(4)).
ip, ip6, arp, rarp, atalk, aarp, decnet, iso, stp, ipx, netbeui
Abbreviations for:where p is one of the above protocols.
lat, moprc, mopdl
Abbreviations for:where p is one of the above protocols.Note thattcpdump does not currently know how to parse these protocols.
vlan [vlan_id]
True if the packet is an IEEE 802.1Q VLAN packet.If [vlan_id] is specified, only true if the packet has the specifiedvlan_id.Note that the first vlan keyword encountered in expressionchanges the decoding offsets for the remainder of expression onthe assumption that the packet is a VLAN packet. The vlan[vlan_id] expression may be used more than once, to filter on VLANhierarchies. Each use of that expression increments the filter offsetsby 4.
For example:filters on VLAN 200 encapsulated within VLAN 100, andfilters IPv4 protocols encapsulated in VLAN 300 encapsulated within anyhigher order VLAN.
mpls [label_num]
True if the packet is an MPLS packet.If [label_num] is specified, only true is the packet has the specifiedlabel_num.Note that the first mpls keyword encountered in expressionchanges the decoding offsets for the remainder of expression onthe assumption that the packet is a MPLS-encapsulated IP packet. Thempls [label_num] expression may be used more than once, tofilter on MPLS hierarchies. Each use of that expression increments thefilter offsets by 4.
For example:filters packets with an outer label of 100000 and an inner label of1024, andfilters packets to or from 192.9.200.1 with an inner label of 1024 andany outer label.
pppoed
True if the packet is a PPP-over-Ethernet Discovery packet (Ethernettype 0x8863).
pppoes
True if the packet is a PPP-over-Ethernet Session packet (Ethernettype 0x8864).Note that the first pppoes keyword encountered in expressionchanges the decoding offsets for the remainder of expression onthe assumption that the packet is a PPPoE session packet.
For example:filters IPv4 protocols encapsulated in PPPoE.
tcp, udp, icmp
Abbreviations for:where p is one of the above protocols.
iso proto protocol
True if the packet is an OSI packet of protocol type protocol.Protocol can be a number or one of the namesclnp, esis, or isis.
clnp, esis, isis
Abbreviations for:where p is one of the above protocols.
l1, l2, iih, lsp, snp, csnp, psnp
Abbreviations for IS-IS PDU types.
vpin
True if the packet is an ATM packet, for SunATM on Solaris, with avirtual path identifier ofn.
vcin
True if the packet is an ATM packet, for SunATM on Solaris, with avirtual channel identifier ofn.
lane
True if the packet is an ATM packet, for SunATM on Solaris, and isan ATM LANE packet.Note that the first lane keyword encountered in expressionchanges the tests done in the remainder of expressionon the assumption that the packet is either a LANE emulated Ethernetpacket or a LANE LE Control packet. If lane isn't specified, thetests are done under the assumption that the packet is anLLC-encapsulated packet.
llc
True if the packet is an ATM packet, for SunATM on Solaris, and isan LLC-encapsulated packet.
oamf4s
True if the packet is an ATM packet, for SunATM on Solaris, and isa segment OAM F4 flow cell (VPI=0 & VCI=3).
oamf4e
True if the packet is an ATM packet, for SunATM on Solaris, and isan end-to-end OAM F4 flow cell (VPI=0 & VCI=4).
oamf4
True if the packet is an ATM packet, for SunATM on Solaris, and isa segment or end-to-end OAM F4 flow cell (VPI=0 & (VCI=3 | VCI=4)).
oam
True if the packet is an ATM packet, for SunATM on Solaris, and isa segment or end-to-end OAM F4 flow cell (VPI=0 & (VCI=3 | VCI=4)).
metac
True if the packet is an ATM packet, for SunATM on Solaris, and ison a meta signaling circuit (VPI=0 & VCI=1).
bcc
True if the packet is an ATM packet, for SunATM on Solaris, and ison a broadcast signaling circuit (VPI=0 & VCI=2).
sc
True if the packet is an ATM packet, for SunATM on Solaris, and ison a signaling circuit (VPI=0 & VCI=5).
ilmic
True if the packet is an ATM packet, for SunATM on Solaris, and ison an ILMI circuit (VPI=0 & VCI=16).
connectmsg
True if the packet is an ATM packet, for SunATM on Solaris, and ison a signaling circuit and is a Q.2931 Setup, Call Proceeding, Connect,Connect Ack, Release, or Release Done message.
metaconnect
True if the packet is an ATM packet, for SunATM on Solaris, and ison a meta signaling circuit and is a Q.2931 Setup, Call Proceeding, Connect,Release, or Release Done message.
expr relop expr
True if the relation holds, where relop is one of >, <, >=, <=, =,!=, and expr is an arithmetic expression composed of integerconstants (expressed in standard C syntax), the normal binary operators[+, -, *, /, &, |, <<, >>], a length operator, and special packet dataaccessors. Note that all comparisons are unsigned, so that, for example,0x80000000 and 0xffffffff are > 0.To accessdata inside the packet, use the following syntax:Proto is one of ether, fddi, tr, wlan, ppp, slip, link,ip, arp, rarp, tcp, udp, icmp, ip6 or radio, andindicates the protocol layer for the index operation.(ether, fddi, wlan, tr, ppp, slip and link all refer to thelink layer. radio refers to the 'radio header' added to some802.11 captures.)Note that tcp, udp and other upper-layer protocol types onlyapply to IPv4, not IPv6 (this will be fixed in the future).The byte offset, relative to the indicated protocol layer, isgiven by expr.Size is optional and indicates the number of bytes in thefield of interest; it can be either one, two, or four, and defaults to one.The length operator, indicated by the keyword len, gives thelength of the packet.

For example, `ether[0] & 1 != 0' catches all multicast traffic.The expression `ip[0] & 0xf != 5'catches all IPv4 packets with options.The expression`ip[6:2] & 0x1fff = 0'catches only unfragmented IPv4 datagrams and frag zero of fragmentedIPv4 datagrams.This check is implicitly applied to the tcp and udpindex operations.For instance, tcp[0] always means the firstbyte of the TCP header, and never means the first byte of anintervening fragment.

Some offsets and field values may be expressed as names rather thanas numeric values.The following protocol header field offsets areavailable: icmptype (ICMP type field), icmpcode (ICMPcode field), and tcpflags (TCP flags field).

The following ICMP type field values are available: icmp-echoreply,icmp-unreach, icmp-sourcequench, icmp-redirect,icmp-echo, icmp-routeradvert, icmp-routersolicit,icmp-timxceed, icmp-paramprob, icmp-tstamp,icmp-tstampreply, icmp-ireq, icmp-ireqreply,icmp-maskreq, icmp-maskreply.

The following TCP flags field values are available: tcp-fin,tcp-syn, tcp-rst, tcp-push,tcp-ack, tcp-urg.

Primitives may be combined using:

not').
Concatenation (`&&' or `and').
Alternation (`||' or `or').

Negation has highest precedence.Alternation and concatenation have equal precedence and associateleft to right.Note that explicit and tokens, not juxtaposition,are now required for concatenation.

If an identifier is given without a keyword, the most recent keywordis assumed.For example,is short forwhich should not be confused with

Expression arguments can be passed to tcpdump as either a singleargument or as multiple arguments, whichever is more convenient.Generally, if the expression contains Shell metacharacters, it iseasier to pass it as a single, quoted argument.Multiple arguments are concatenated with spaces before being parsed.

EXAMPLES

To print all packets arriving at or departing from sundown:

To print traffic between helios and either hot or ace:

Cyclone separator design software, free download. To print all IP packets between ace and any host except helios:

To print all traffic between local hosts and hosts at Berkeley:

To print all ftp traffic through internet gateway snup:(note that the expression is quoted to prevent the shell from(mis-)interpreting the parentheses):

To print traffic neither sourced from nor destined for local hosts(if you gateway to one other net, this stuff should never make itonto your local net).

To print the start and end packets (the SYN and FIN packets) of eachTCP conversation that involves a non-local host.

To print all IPv4 HTTP packets to and from port 80, i.e. print onlypackets that contain data, not, for example, SYN and FIN packets andACK-only packets. (IPv6 is left as an exercise for the reader.)

To print IP packets longer than 576 bytes sent through gateway snup:

To print IP broadcast or multicast packets that werenotsent via Ethernet broadcast or multicast:

To print all ICMP packets that are not echo requests/replies (i.e., notping packets):

OUTPUT FORMAT

The output of tcpdump is protocol dependent.The followinggives a brief description and examples of most of the formats.

Link Level Headers

If the '-e' option is given, the link level header is printed out.On Ethernets, the source and destination addresses, protocol,and packet length are printed.

On FDDI networks, the '-e' option causes tcpdump to printthe `frame control' field, the source and destination addresses,and the packet length.(The `frame control' field governs theinterpretation of the rest of the packet.Normal packets (suchas those containing IP datagrams) are `async' packets, with a priorityvalue between 0 and 7; for example, `async4'.Such packetsare assumed to contain an 802.2 Logical Link Control (LLC) packet;the LLC header is printed if it is not an ISO datagram or aso-called SNAP packet.

On Token Ring networks, the '-e' option causes tcpdump to printthe `access control' and `frame control' fields, the source anddestination addresses, and the packet length.As on FDDI networks,packets are assumed to contain an LLC packet.Regardless of whetherthe '-e' option is specified or not, the source routing information isprinted for source-routed packets.

On 802.11 networks, the '-e' option causes tcpdump to printthe `frame control' fields, all of the addresses in the 802.11 header,and the packet length.As on FDDI networks,packets are assumed to contain an LLC packet.

(N.B.: The following description assumes familiarity withthe SLIP compression algorithm described in RFC-1144.)

On SLIP links, a direction indicator (``I' for inbound, ``O' for outbound),packet type, and compression information are printed out.The packet type is printed first.The three types are ip, utcp, and ctcp.No further link information is printed for ip packets.For TCP packets, the connection identifier is printed following the type.If the packet is compressed, its encoded header is printed out.The special cases are printed out as*S+n and *SA+n, where n is the amount by whichthe sequence number (or sequence number and ack) has changed.If it is not a special case,zero or more changes are printed.A change is indicated by U (urgent pointer), W (window), A (ack),S (sequence number), and I (packet ID), followed by a delta (+n or -n),or a new value (=n).Finally, the amount of data in the packet and compressed header lengthare printed.

For example, the following line shows an outbound compressed TCP packet,with an implicit connection identifier; the ack has changed by 6,the sequence number by 49, and the packet ID by 6; there are 3 bytes ofdata and 6 bytes of compressed header:

ARP/RARP Packets

Arp/rarp output shows the type of request and its arguments.Theformat is intended to be self explanatory.Here is a short sample taken from the start of an `rlogin' fromhost rtsg to host csam:

The first line says that rtsg sent an arp packet askingfor the Ethernet address of internet host csam.Csamreplies with its Ethernet address (in this example, Ethernet addressesare in caps and internet addresses in lower case).

This would look less redundant if we had done tcpdump -n:

If we had done tcpdump -e, the fact that the first packet isbroadcast and the second is point-to-point would be visible:

For the first packet this says the Ethernet source address is RTSG, thedestination is the Ethernet broadcast address, the type fieldcontained hex 0806 (type ETHER_ARP) and the total length was 64 bytes.

TCP Packets

(N.B.:The following description assumes familiarity withthe TCP protocol described in RFC-793.If you are not familiarwith the protocol, neither this description nor tcpdump willbe of much use to you.)

The general format of a tcp protocol line is:

Src and dst are the source and destination IPaddresses and ports.Flags are some combination of S (SYN),F (FIN), P (PUSH), R (RST), W (ECN CWR) or E (ECN-Echo), or a single`.' (no flags).Data-seqno describes the portion of sequence space coveredby the data in this packet (see example below).Ack is sequence number of the next data expected the otherdirection on this connection.Window is the number of bytes of receive buffer space availablethe other direction on this connection.Urg indicates there is `urgent' data in the packet.Options are tcp options enclosed in angle brackets (e.g., <mss 1024>).

Src, dst and flags are always present.The other fieldsdepend on the contents of the packet's tcp protocol header andare output only if appropriate.

Here is the opening portion of an rlogin from host rtsg tohost csam.

The first line says that tcp port 1023 on rtsg sent a packetto port loginon csam.The S indicates that the SYN flag was set.The packet sequence number was 768512 and it contained no data.(The notation is `first:last(nbytes)' which means `sequencenumbers firstup to but not including last which is nbytes bytes of user data'.)There was no piggy-backed ack, the available receive window was 4096bytes and there was a max-segment-size option requesting an mss of1024 bytes.

Csam replies with a similar packet except it includes a piggy-backedack for rtsg's SYN.Rtsg then acks csam's SYN.The `.' means noflags were set.The packet contained no data so there is no data sequence number.Note that the ack sequencenumber is a small integer (1).The first time tcpdump sees atcp `conversation', it prints the sequence number from the packet.On subsequent packets of the conversation, the difference betweenthe current packet's sequence number and this initial sequence numberis printed.This means that sequence numbers after thefirst can be interpretedas relative byte positions in the conversation's data stream (with thefirst data byte each direction being `1').`-S' will override thisfeature, causing the original sequence numbers to be output.

On the 6th line, rtsg sends csam 19 bytes of data (bytes 2 through 20in the rtsg -> csam side of the conversation).The PUSH flag is set in the packet.On the 7th line, csam says it's received data sent by rtsg up tobut not including byte 21.Most of this data is apparently sitting in thesocket buffer since csam's receive window has gotten 19 bytes smaller.Csam also sends one byte of data to rtsg in this packet.On the 8th and 9th lines,csam sends two bytes of urgent, pushed data to rtsg.

If the snapshot was small enough that tcpdump didn't capturethe full TCP header, it interprets as much of the header as it canand then reports ``[|tcp]' to indicate the remainder could notbe interpreted.If the header contains a bogus option (one with a lengththat's either too small or beyond the end of the header), tcpdumpreports it as ``[bad opt]' and does not interpret any furtheroptions (since it's impossible to tell where they start).If the headerlength indicates options are present but the IP datagram length is notlong enough for the options to actually be there, tcpdump reportsit as ``[bad hdr length]'.

Capturing TCP packets with particular flag combinations (SYN-ACK, URG-ACK, etc.)

There are 8 bits in the control bits section of the TCP header:

2) Recipient responds with SYN, ACK
tcpdump.

Ffmpeg Command Line Options

Recall the structure of a TCP header without options:

A TCP header usually holds 20 octets of data, unless options arepresent.The first line of the graph contains octets 0 - 3, thesecond line shows octets 4 - 7 etc.

Starting to count with 0, the relevant TCP control bits are containedin octet 13:

Let's have a closer look at octet no. 13:

These are the TCP control bits we are interestedin.We have numbered the bits in this octet from 0 to 7, right toleft, so the PSH bit is bit number 3, while the URG bit is number 5.

Recall that we want to capture packets with only SYN set.Let's see what happens to octet 13 if a TCP datagram arriveswith the SYN bit set in its header:

Looking at thecontrol bits section we see that only bit number 1 (SYN) is set.

Assuming that octet number 13 is an 8-bit unsigned integer innetwork byte order, the binary value of this octet is

This relationship can be expressed as

tcpdump -i xl0 tcp[13] 2

The expression says 'let the 13th octet of a TCP datagram havethe decimal value 2', which is exactly what we want.

Now, let's assume that we need to capture SYN packets, but wedon't care if ACK or any other TCP control bit is set at thesame time.Let's see what happens to octet 13 when a TCP datagramwith SYN-ACK set arrives:

Now bits 1 and 4 are set in the 13th octet.The binary value ofoctet 13 is

tcpdump filterexpression, because that would select only those packets that haveSYN-ACK set, but not those with only SYN set.Remember that we don't careif ACK or any other control bit is set as long as SYN is set.

In order to achieve our goal, we need to logically AND thebinary value of octet 13 with some other value to preservethe SYN bit.We know that we want SYN to be set in any case,so we'll logically AND the value in the 13th octet withthe binary value of a SYN:

We see that this AND operation delivers the same resultregardless whether ACK or another TCP control bit is set.The decimal representation of the AND value as well asthe result of this operation is 2 (binary 00000010),so we know that for packets with SYN set the followingrelation must hold true:


tcpdump -i xl0 'tcp[13] & 2 2'

Note that you should use single quotes or a backslashin the expression to hide the AND ('&') special characterfrom the shell.

UDP Packets

UDP format is illustrated by this rwho packet:

This says that port who on host actinide sent a udpdatagram to port who on host broadcast, the Internetbroadcast address.The packet contained 84 bytes of user data.

Some UDP services are recognized (from the source or destinationport number) and the higher level protocol information printed.In particular, Domain Name service requests (RFC-1034/1035) and SunRPC calls (RFC-1050) to NFS.

UDP Name Server Requests

(N.B.:The following description assumes familiarity withthe Domain Service protocol described in RFC-1035.If you are not familiarwith the protocol, the following description will appear to be writtenin greek.)

Name server requests are formatted as

Host h2opolo asked the domain server on helios for anaddress record (qtype=A) associated with the name ucbvax.berkeley.edu.The query id was `3'.The `+' indicates the recursion desired flagwas set.The query length was 37 bytes, not including the UDP andIP protocol headers.The query operation was the normal one, Query,so the op field was omitted.If the op had been anything else, it wouldhave been printed between the `3' and the `+'.Similarly, the qclass was the normal one,C_IN, and omitted.Any other qclass would have been printedimmediately after the `A'.

A few anomalies are checked and may result in extra fields enclosed insquare brackets: If a query contains an answer, authority records oradditional records section,ancount,nscount,orarcountare printed as `[na]', `[nn]' or `[nau]' where nis the appropriate count.If any of the response bits are set (AA, RA or rcode) or any of the`must be zero' bits are set in bytes two and three, `[b2&3=x]'is printed, where x is the hex value of header bytes two and three.

UDP Name Server Responses

Name server responses are formatted as

In the first example, helios responds to query id 3 from h2opolowith 3 answer records, 3 name server records and 7 additional records.The first answer record is type A (address) and its data is internetaddress 128.32.137.3.The total size of the response was 273 bytes,excluding UDP and IP headers.The op (Query) and response code(NoError) were omitted, as was the class (C_IN) of the A record.

In the second example, helios responds to query 2 with aresponse code of non-existent domain (NXDomain) with no answers,one name server and no authority records.The `*' indicates thatthe authoritative answer bit was set.Since there were noanswers, no type, class or data were printed.

Other flag characters that might appear are `-' (recursion available,RA, not set) and `|' (truncated message, TC, set).If the`question' section doesn't contain exactly one entry, `[nq]'is printed.

Note that name server requests and responses tend to be large and thedefault snaplen of 68 bytes may not capture enough of the packetto print.Use the -s flag to increase the snaplen if youneed to seriously investigate name server traffic.`-s 128'has worked well for me.

SMB/CIFS decoding

tcpdump now includes fairly extensive SMB/CIFS/NBT decoding for dataon UDP/137, UDP/138 and TCP/139.Some primitive decoding of IPX andNetBEUI SMB data is also done.

By default a fairly minimal decode is done, with a much more detaileddecode done if -v is used.Be warned that with -v a single SMB packetmay take up a page or more, so only use -v if you really want all thegory details.

For information on SMB packet formats and what all te fields mean seewww.cifs.org or the pub/samba/specs/ directory on your favoritesamba.org mirror site.The SMB patches were written by Andrew Tridgell(tridge@samba.org).

NFS Requests and Replies

Sun NFS (Network File System) requests and replies are printed as:

In the first line, host sushi sends a transaction with id 6709to wrl (note that the number following the src host is atransaction id, not the source port).The request was 112 bytes,excluding the UDP and IP headers.The operation was a readlink(read symbolic link) on file handle (fh) 21,24/10.731657119.(If one is lucky, as in this case, the file handle can be interpretedas a major,minor device number pair, followed by the inode number andgeneration number.)Wrl replies `ok' with the contents of the link.

In the third line, sushi asks wrl to lookup the name`xcolors' in directory file 9,74/4096.6878.Note that the data printeddepends on the operation type.The format is intended to be selfexplanatory if read in conjunction withan NFS protocol spec.

If the -v (verbose) flag is given, additional information is printed.For example:

(-v also prints the IP header TTL, ID, length, and fragmentation fields,which have been omitted from this example.) In the first line,sushi asks wrl to read 8192 bytes from file 21,11/12.195,at byte offset 24576.Wrl replies `ok'; the packet shown on thesecond line is the first fragment of the reply, and hence is only 1472bytes long (the other bytes will follow in subsequent fragments, butthese fragments do not have NFS or even UDP headers and so might not beprinted, depending on the filter expression used).Because the -v flagis given, some of the file attributes (which are returned in additionto the file data) are printed: the file type (``REG', for regular file),the file mode (in octal), the uid and gid, and the file size.

If the -v flag is given more than once, even more details are printed.

Note that NFS requests are very large and much of the detail won't be printedunless snaplen is increased.Try using `-s 192' to watchNFS traffic.

NFS reply packets do not explicitly identify the RPC operation.Instead,tcpdump keeps track of ``recent' requests, and matches them to thereplies using the transaction ID.If a reply does not closely follow thecorresponding request, it might not be parsable.

AFS Requests and Replies

Transarc AFS (Andrew File System) requests and replies are printedas:

In the first line, host elvis sends a RX packet to pike.This wasa RX data packet to the fs (fileserver) service, and is the start ofan RPC call.The RPC call was a rename, with the old directory file idof 536876964/1/1 and an old filename of `.newsrc.new', and a new directoryfile id of 536876964/1/1 and a new filename of `.newsrc'.The host pikeresponds with a RPC reply to the rename call (which was successful, becauseit was a data packet and not an abort packet).

In general, all AFS RPCs are decoded at least by RPC call name.MostAFS RPCs have at least some of the arguments decoded (generally onlythe `interesting' arguments, for some definition of interesting).

The format is intended to be self-describing, but it will probablynot be useful to people who are not familiar with the workings ofAFS and RX.

If the -v (verbose) flag is given twice, acknowledgement packets andadditional header information is printed, such as the the RX call ID,call number, sequence number, serial number, and the RX packet flags.

If the -v flag is given twice, additional information is printed,such as the the RX call ID, serial number, and the RX packet flags.The MTU negotiation information is also printed from RX ack packets.

If the -v flag is given three times, the security index and service idare printed.

Error codes are printed for abort packets, with the exception of Ubikbeacon packets (because abort packets are used to signify a yes votefor the Ubik protocol).

Note that AFS requests are very large and many of the arguments won'tbe printed unless snaplen is increased.Try using `-s 256'to watch AFS traffic.

AFS reply packets do not explicitly identify the RPC operation.Instead,tcpdump keeps track of ``recent' requests, and matches them to thereplies using the call number and service ID.If a reply does not closelyfollow thecorresponding request, it might not be parsable.

KIP AppleTalk (DDP in UDP)

AppleTalk DDP packets encapsulated in UDP datagrams are de-encapsulatedand dumped as DDP packets (i.e., all the UDP header information isdiscarded).The file/etc/atalk.namesis used to translate AppleTalk net and node numbers to names.Lines in this file have the form

The first two lines give the names of AppleTalk networks.The thirdline gives the name of a particular host (a host is distinguishedfrom a net by the 3rd octet in the number -a net number must have two octets and a host number musthave three octets.) The number and name should be separated bywhitespace (blanks or tabs).The/etc/atalk.namesfile may contain blank lines or comment lines (lines starting witha `#').

AppleTalk addresses are printed in the form

(If the/etc/atalk.namesdoesn't exist or doesn't contain an entry for some AppleTalkhost/net number, addresses are printed in numeric form.)In the first example, NBP (DDP port 2) on net 144.1 node 209is sending to whatever is listening on port 220 of net icsd node 112.The second line is the same except the full name of the source nodeis known (`office').The third line is a send from port 235 onnet jssmag node 149 to broadcast on the icsd-net NBP port (note thatthe broadcast address (255) is indicated by a net name with no hostnumber - for this reason it's a good idea to keep node names andnet names distinct in /etc/atalk.names).

NBP (name binding protocol) and ATP (AppleTalk transaction protocol)packets have their contents interpreted.Other protocols just dumpthe protocol name (or number if no name is registered for theprotocol) and packet size.

NBP packets are formatted like the following examples:

The first line is a name lookup request for laserwriters sent by net icsd host112 and broadcast on net jssmag.The nbp id for the lookup is 190.The second line shows a reply for this request (note that it has thesame id) from host jssmag.209 saying that it has a laserwriterresource named 'RM1140' registered on port 250.The third line isanother reply to the same request saying host techpit has laserwriter'techpit' registered on port 186.

ATP packet formatting is demonstrated by the following example:

Jssmag.209 initiates transaction id 12266 with host helios by requestingup to 8 packets (the `<0-7>').The hex number at the end of the lineis the value of the `userdata' field in the request.

Helios responds with 8 512-byte packets.The `:digit' following thetransaction id gives the packet sequence number in the transactionand the number in parens is the amount of data in the packet,excluding the atp header.The `*' on packet 7 indicates that theEOM bit was set.

Jssmag.209 then requests that packets 3 & 5 be retransmitted.Heliosresends them then jssmag.209 releases the transaction.Finally,jssmag.209 initiates the next request.The `*' on the requestindicates that XO (`exactly once') was not set.

IP Fragmentation

Fragmented Internet datagrams are printed as

(The first form indicates there are more fragments.The secondindicates this is the last fragment.)

Id is the fragment id.Size is the fragmentsize (in bytes) excluding the IP header.Offset is thisfragment's offset (in bytes) in the original datagram.

The fragment information is output for each fragment.The firstfragment contains the higher level protocol header and the fraginfo is printed after the protocol info.Fragmentsafter the first contain no higher level protocol header and thefrag info is printed after the source and destination addresses.For example, here is part of an ftp from arizona.edu to lbl-rtsg.arpaover a CSNET connection that doesn't appear to handle 576 byte datagrams:

There are a couple of things to note here: First, addresses in the2nd line don't include port numbers.This is because the TCPprotocol information is all in the first fragment and we have no ideawhat the port or sequence numbers are when we print the later fragments.Second, the tcp sequence information in the first line is printed as if therewere 308 bytes of user data when, in fact, there are 512 bytes (308 inthe first frag and 204 in the second).If you are looking for holesin the sequence space or trying to match up ackswith packets, this can fool you.

A packet with the IP don't fragment flag is marked with atrailing (DF).

Timestamps

By default, all output lines are preceded by a timestamp.The timestampis the current clock time in the form

and is as accurate as the kernel's clock.The timestamp reflects the time the kernel first saw the packet.No attemptis made to account for the time lag between when theEthernet interface removed the packet from the wire and when the kernelserviced the `new packet' interrupt.

AUTHORS

The original authors are:

Van Jacobson,Craig Leres andSteven McCanne, all of theLawrence Berkeley National Laboratory, University of California, Berkeley, CA.

It is currently being maintained by tcpdump.org.

The current version is available via http:

ftp://ftp.ee.lbl.gov/tcpdump.tar.Z

IPv6/IPsec support is added by WIDE/KAME project.This program uses Eric Young's SSLeay library, under specific configuration.

BUGS

Please send problems, bugs, questions, desirable enhancements, etc. to:
patches@tcpdump.org

NIT doesn't let you watch your own outbound traffic, BPF will.We recommend that you use the latter.

On Linux systems with 2.0[.x] kernels:

tcpdump);
capturing on some PPP devices won't work correctly.
Ffmpeg command line reference

We recommend that you upgrade to a 2.2 or later kernel.

Some attempt should be made to reassemble IP fragments or, at leastto compute the right length for the higher level protocol.

Name server inverse queries are not dumped correctly: the (empty)question section is printed rather than real query in the answersection.Some believe that inverse queries are themselves a bug andprefer to fix the program generating them rather than tcpdump.

A packet trace that crosses a daylight savings time change will giveskewed time stamps (the time change is ignored).

Filter expressions on fields other than those in Token Ring headers willnot correctly handle source-routed Token Ring packets.

Filter expressions on fields other than those in 802.11 headers will notcorrectly handle 802.11 data packets with both To DS and From DS set.

ip6 protoshould chase header chain, but at this moment it does not.ip6 protochainis supplied for this behavior.

Arithmetic expression against transport layer headers, like tcp[0],does not work against IPv6 packets.It only looks at IPv4 packets.

This document was created byman2html,using the manual pages.
Time: 02:59:27 GMT, December 01, 2006

Winamp Linein Command

Breadcrumb -- Wiki Main : Skin Developer : Visual Developer : Plug-in Developer : Articles Page : FAQ : Glossary

  • 4Trouble Shooting

Installation

MilkDrop 2 comes with Winamp. To install it, just download and install the latest version of Winamp. During the installation, make sure the 'MilkDrop' visualizer option is checked, so that it gets installed, too.

Once Winamp is installed, launch it. Load some music files into your playlist and start playing some music. (Be sure to play some music before trying to launch the visualizer - otherwise you'll just see a black screen.)

Once music is playing, hit CTRL+K and a list of visualization plug-ins will appear. Select 'MilkDrop 2' from the list. Then click the 'Start' button, and it will launch the visualizer.

Tweaking to achieve best image quality

a) Fullscreen Display Mode [first tab of config screen]

When you run MilkDrop fullscreen, it changes the display mode to whatever you select here. Generally speaking, the speed (framerate) and smoothness of MilkDrop will drop as the resolution (number of pixels on the screen)increases. So, if it's running to slow in fullscreen mode, try selecting a smaller fullscreen display mode.

b) Canvas Stretch [second tab]

This option lets you trade resolution [crispness] for speed. If MilkDrop runs too slow, in any mode (windowed/fullscreen/desktop), try cranking up the canvas stretch to, say, 1.5X or 2X. The image will not look as crisp, but MilkDrop will probably run much faster. (Assuming that your graphics chip was the bottleneck.)

c) Mesh Size [second tab]

This is the main option that affects how much processor (CPU) MilkDrop uses. If you crank it up far beyond the default, expect to be CPU-bound (where your framerate drops because the CPU is the bottleneck). To get MilkDrop to speed up, drop the Mesh Size back down. The Mesh Size decides how many points on the screen the per-vertex equations will be executed for; the higher the mesh size, the more fidelity you will see in the motion.

d) Tips for LCD and laptop users

LCD screens: Note that most LCD screens (flatpanels) usually run at a fixed frequency only - usually 60 Hz - meaning that they update the screen 60 times per second. However, sometimes the video driver reports that it supports other refresh rates, such as 72, 75, 85, etc. It is strongly recommended that [for fullscreen mode, and for Windows in general] you choose a display mode with a 60 Hz refresh rate, for the smoothest possible animation. For this plugin, you will also want to choose Maximum Framerates that divide evenly into 60 - such as 60, 30, 20, 15, 12, 10, 6, 5, and so on - so that the # of times the LCD shows each frame of animation remains constant, resulting in the smoothest possible animation.

e) color (bit) depth: 16 or 32?

The answer, nowadays, is a resounding '32'. Video memory is plentiful these days; use 32 bit color, for both your windows desktop (..so that MilkDrop's windowed mode can run at 32 bits) and for MilkDrop's Fullscreen Display Mode setting (where '8888' denotes 32 bits). Some ancient video cards don't have enough memory to run MilkDrop properly (or smoothly) in 32 bits, though; you might want to try 16-bit color if your card has less than 32 MB of video memory, if you are using a laptop, or if your video card is significantly old. In the MilkDrop config panel, 16-bit modes show up as '555' or '565'.

If you find that your card runs best in 32-bit color, you should have no problems with brightness levels while running MilkDrop. However, if your card runs best in 16-bit color, you should then adjust the Brightness slider on the second tab of the config panel (which only affects 16-bit color video modes!). The goal is to make the image as bright as possible, without oversaturating it (washing it out, often to bright pink or white). This setting also varies for different cards, depending on how the card rounds color values, so we recommend seeing how bright you can set the slider closer to '0') without oversaturating the image. Usually,a setting of '0' or '2' works the best.

Usage

4.a. Keyboard Commands

The following keys can be used to control MilkDrop while it is running.(Note: pressing F1 while MilkDrop is running will show you this list)

GENERAL

PRESET LOADING

loading a new preset will load everything *except* thelocked shaders, creating a mix between the two presets.

Team fortress 2 non steam pc update patch 1.7. PRESET EDITING AND SAVING

(see MilkDrop Preset Authoring)

MUSIC PLAYBACK

Winamp Line In Url

FUNCTION KEYS

SPRITES AND CUSTOM MESSAGES (FOR VJ's)

DELETE: clear message (if visible)

Note that there are more keys available, but because manyare only relevant to people designing their own presets, they are listed in the preset authoring guide instead.

4.b. config panel

The configuration panel lets you customize the way MilkDrop runs.To learn how to get to the configuration panel, see the 'Installation'section above.

Once you're in the config panel, you'll see a number of tabsat the top, some dropdown boxes, and some checkboxes. Eachof the tabs at the top brings you to a different page of configuration options. To get help on a setting, simply clickon the '?' in the upper-right corner of the config panel, and then click on the setting you want help with.

4.c. preset authoring

Please check the MilkDrop Preset Authoring guide for instructions on how to create and save your own presets.

4.d. rating system

The built-in rating system allows you to rate each preset on a scale from 0 to 5. A rating of 5 is very good, while a rating of 0 isthe worst. The ratings decide how often the presets will be randomlyloaded. If a preset has a rating of 0, it will never be randomlyloaded (unless they're all zero; then they all have an equal chance).

To show the rating for a preset, press F6. You can adjust the rating for a preset with the +/- keys. When you make adjustments,they save automatically; there's no need to save the preset to makethe rating change permanent.

Here's a recommended interpretation of the numeric values:

If a preset seems 'lost' because you set its rating to 0 and itwon't ever come back, you can always load it up by hitting 'L'to conjure the 'Load Preset' menu, finding the preset you want,loading it, then hitting +.

4.e. custom messages

ABOUT CUSTOM MESSAGES:The 'Custom Message' feature of MilkDrop allows you to displayshort text messages on the screen while MilkDrop is running.They are highly configurable; you can set all of the followingparameters: the font, the size, the positioning, color, bold state, italic state, and so on; and you can even have it randomize some of these properties.

CREATING THE MESSAGES:You can save up to 100 messages in the file MILK_MSG.INI inyour WinampPlugins folder. To open this file, go to the MilkDrop configuration screen (ALT+K from Winamp) and click the'Edit Custom Messages' button. Or, you can just edit it manually if you know how; it's plain-text.

The first thing you see when you open the file is a bunch oflines that start with two forward slashes (//). These arecomment lines, and they explain the syntax for adding a fontor a message to the file. This is your main reference forfinding out what all the parameters do for the fonts & messages;it is recommended that you leave this information in the file,although it can be removed or (modified) and the messages willstill work.

After the comments come first the fonts, then the messages.The fonts are simply a way to specify a typeface, bold state,italics state, and red/green/blue color for the font. You can configure up to 16 fonts like this (numbered 00-15). These fontswill serve as template fonts for the custom messages.

The next section is the actual messages. Each one has atext message (the 'text' parameter) that will be shown to theuser, and each one references one of the 16 fonts that weredefined in the previous section. You can also specify thesize (size), position (x,y), a growth factor (growth) thatwill grow/shrink the message over its lifetime, the numberof seconds to show the message (time), and the fraction of thattime that is spent fading in (fade).

You can also randomize some of these values: 'randx' and 'randy'will randomly perturb the (x,y) coordinates every time the messageis shown to the user, and 'randr'/'randg'/'randb' will randomlyperturb the (r,g,b) color in the same way.

Finally, you can override any of the default properties for thefont that this message uses: (face, bold, ital, r, g, b).

INVOCATION AND USAGE:There are two ways to invoke custom messages: one automatic,the other manual.

The automatic way is to go to the MilkDrop config panel (ALT+K),click the 'More Options' button, and set the value in the'Time between RANDOM custom messages' box to something greaterthan zero. This will cause MilkDrop to randomly display custom messages while it is running, and the average time (in seconds) between messages will be the value you entered here. If you wish to disable random custom messages, set this value to -1(or any negative number). Note that all messages in the filehave an equal change of being picked.

The manual way is to type in the two-digit code (00-99) of the message while MilkDrop is running. However, you can't use the numeric keypad for this - you have to use the numbers at the TOP of your keyboard to do it. If you mess up while enteringthe first digit, just press the '*' key to start over.

Note that if you change the MILK_MSG.INI file while MilkDropis running, you will not be able to see the changes untilyou hit F7, which tells MilkDrop to re-read the MILK_MSG.INI file from disk.


4.f. sprites

ABOUT SPRITES:The 'Sprite' feature of MilkDrop allows you to display any image of your choice in the foreground (on top of MilkDrop) while it runs. The sprites can fade in and out, move around, respond to the music, and so on. You define them in a file - milk_img.ini in your winampplugins directory - much like you define custom messages, each having an identifying code number from 00 through 99 (used to invoke them). However, the way the individual sprites are defined is different; you write code for them, instead of just setting parameter values. This is a little bit tougher to do (it's very much like preset authoring), but adds a great deal of flexibility to what you can do with the sprites.

CREATING THE SPRITES:

You can define up to 100 sprites in the file MILK_IMG.INI in your WinampPlugins folder. To open this file, go to the MilkDrop configuration screen (ALT+K from Winamp) and click the 'Edit Sprites' button. Or, you can just edit it manually if you know how; it's plain-text.

The first thing you see when you open the file is a bunch of lines that start with two forward slashes (//). These are comment lines, and they explain the syntax for creating a sprite. This is your main reference for finding out what all the parameters do for the fonts & messages; it is recommended that you leave this information in the file, although it can be removed (or modified) and the sprites will still work.

After the comments come the sprite definitions. Each sprite is made up of one parameter that indicates the image file to use (this is the 'img=..' line), and two types of code: initialization code, and regular code.

The first - initialization code - is executed only once, when you launch the sprite. Use it to do one-time initialization of variables (such as the opacity (a), rotation angle (rot), position (x,y), and so on) or to invent new variables that you will access later. This code is marked by the 'init_1=..', 'init_2=..', etc. lines. The second type of code - marked by 'code_1=..', 'code_2=..', etc. is executed every frame, just prior to plastering the sprite on the screen. Use it to animate the sprite, moving it around (changing x,y), scaling it up and down (sx,sy), fading it in and out (a), changing its color, and so on.

INVOCATION AND USAGE:There is currently only one way to invoke sprites: manually. To do this, first press 'K' to enter 'sprite mode' (while running MilkDrop). Now, whenever you type in a two-digit code (00-99), MilkDrop will try to find & launch the sprite you've requested, from the milk_img.ini file. If there is an error, it will display an error message in the upper-right corner. Note that to enter the two-digit code, you can't use the numeric keypad; you have to use the numbers at the TOP of your keyboard.

If you make an error entering the first digit of the code, just press '*' to start over. If you want to clear the most recently-invoked sprite, press DELETE. If you want to clear the oldest sprite, press SHIFT + DELETE. If you want to clear all sprites, press SHIFT + CTRL + DELETE.

Winamp Command Line Options

If you want to clear sprites by their 2-digit code, press SHIFT + K (instead of just 'K') to enter 'sprite kill mode.' Now, when you enter a two-digit code, instead of invoking the sprite, MilkDrop clears all running sprites with that two-digit code.

Trouble Shooting

If MilkDrop has a critical problem (e.g. fails to load, freezes, etc.)or if the image is distorted, torn, corrupted, or all one solid color, try the following two suggestions to resolve the problem. In 90% of these cases it can be fixed. If you have a different problem, scroll down past this part and try to find the appropriate symptom and its solution.

1. UPDATE YOUR VIDEO DRIVER, OR TRY OTHER DRIVERS

Almost all display problems are caused by buggy video drivers! A 'driver' is a piece of software that translates graphics-related commands from programs, like MilkDrop, into the native language of your specific graphics hardware.

For desktop machines, there are typically three sources for video drivers:

  1. those from the *chip* manufacturer's website (usually nvidia.com or ati.com) (best source)
  2. those from the card manufacturer's website (LeadTEK, PNY, etc.)
  3. those that shipped with Windows (yuck)

For laptops:

Ffmpeg Command Line Aac

  1. the driver from the *laptop* manufacturer
  2. (maybe) the driver from the graphics chip manufacturer (ATI, Nvidia, etc) - however, it's fairly common to find that the laptop requires a custom driver written by the laptop manufacturer.
  3. the driver that shipped with Windows (yuck)

Give them all a shot. Track down every driver you can find for your card, and try it. Try the WHQL ones first - these versions of the drivers have passed 'Windows Hardware Quality Labs' certification and are usually the more stable and reliable ones. In general, it's a very good idea to use only Microsoft-certified WHQL drivers for your video card. Often people want to get the newest, fastest beta drivers, but these drivers are almost ALWAYS riddled with new bugs. You can also watch the version number of the drivers a company releases - if the version number just jumped to a new series such as from the 70's to the 80's), watch out, it probably has a lot of bugs that need worked out - give it 3-4 months before expecting the new driver series to work well. With video drivers, the newest isn't always the best!

Here is a list of some common card/chip manufacturers and where to get their drivers. Don't forget to choose the WHQL driver!


For others - or in general - if your graphics chip is made by Trident, for example, then try a google search for:

Then click on 'support', then 'drivers' (or 'downloads'), then 'graphics driver', and so on.

2. [RE]INSTALL DIRECTX

Make sure you have a quasi-recent version of Microsoft DirectX installed. In reality, though, almost every PC in the world has DirectX 9 on it at this point, so this shouldn't be a problem. If you go to download it, you'll only be able to find DirectX 10 - this is fine to install, though, as it includes DirectX 9 inside it. As a last resort, though, if you are having problems, you could try re-installing DirectX to see if it helps.

If you're having a non-critical problem, browse the following list of common problems and their causes and solutions. Note that for each symptom- cause-solution block, there can be multiple symptoms with the same cause and solution, and the same symptom might be listed in multiple blocks.

If the solutions below don't work for you, please visit the forums at http://forums.winamp.com/forumdisplay.php?forumid=84, where you can read the most recent troubleshooting issues and solutions.



Known Issues / Misc. / Tips:


Using Line-In

Retrieved from 'http://wiki.winamp.com/index.php?title=MilkDrop_Unleashed_Guide&oldid=61437'