0Pricing
AWS Security Academy · Lesson

Reading Flow Log Records and Fields

Decode source, destination, ports, and the accept or reject action.

Reading Flow Log Records and Fields is a free AWS Security Academy lesson on CoddyKit — lesson 2 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the AWS Security Academy learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.

Anatomy of a Record

A flow log record is a single line describing traffic for one connection during the aggregation interval. The default format is a fixed sequence of space-separated fields. Learning to read this line quickly is a core skill for any network investigation on AWS.

The Five-Tuple

The heart of a record is the five-tuple: source address, destination address, source port, destination port, and protocol number. This uniquely identifies a conversation. Protocol 6 is TCP and 17 is UDP. Together these fields tell you exactly which endpoints were talking and over what service.

2 111122223333 eni-0abc 10.0.1.5 10.0.2.9 49152 443 6 12 6000 1620140761 1620140821 ACCEPT OK

Source and Destination

The srcaddr and dstaddr fields show the IP addresses involved. For traffic leaving an instance, srcaddr is the instance; for inbound, it is the remote peer. Reading direction correctly is essential: confusing source and destination can flip your entire understanding of an event.

Ports Reveal Services

The dstport usually tells you the service: 443 is HTTPS, 22 is SSH, 3389 is RDP, 3306 is MySQL. Unexpected destination ports, like outbound 6667 (IRC) often used by botnets, are red flags. The srcport is typically an ephemeral high-numbered port chosen by the client.

Bytes and Packets

The bytes and packets fields count data transferred during the interval. A small request answered by a huge outbound byte count can indicate data exfiltration. Tracking these volumes over time helps distinguish normal chatter from a host suddenly shipping gigabytes to an unfamiliar address.

The Action Field

The action field is ACCEPT or REJECT. A REJECT means a security group or NACL blocked the flow. Many REJECTs from one source toward many ports suggest scanning. Crucially, security groups are stateful, so a REJECT there usually reflects a NACL rule, helping you locate which control acted.

The Log Status Field

The final field, log-status, is OK, NODATA, or SKIPDATA. NODATA means there was no traffic in the interval, and SKIPDATA means some records were skipped due to capacity. SKIPDATA is a warning that your visibility had a gap, which matters when you rely on completeness for an investigation.

Timestamps

Each record carries a start and end time in Unix epoch seconds for the aggregation window, not for each packet. When correlating Flow Logs with CloudTrail or application logs, remember the times mark the interval boundary, so an event may have occurred anywhere within that window.

Custom Format Fields

A custom format can add high-value fields such as instance-id, vpc-id, subnet-id, tcp-flags, and flow-direction. The pkt-srcaddr and pkt-dstaddr fields reveal the original addresses behind NAT, which the basic srcaddr/dstaddr can mask. These extras dramatically speed up investigations.

Reading a Record in Practice

To interpret a line, identify the five-tuple first, then the action and byte counts, then map the destination port to a service. Ask whether the direction, volume, and peer make sense for that instance's role. This disciplined read turns a cryptic log line into a clear statement of what happened.

Building Intuition

With practice you spot anomalies instantly: SSH from an unknown internet IP, large outbound transfers to a new region, or repeated REJECTs scanning a subnet. The fields never change, so the skill is pattern recognition. This fluency is exactly what the exam tests in network-visibility scenarios.

Quick Check

Test your ability to read flow log records.

Recap

A flow log record centers on the five-tuple (src/dst address, src/dst port, protocol) plus bytes, packets, an ACCEPT/REJECT action, and a log-status of OK, NODATA, or SKIPDATA. Destination ports reveal services, byte counts hint at exfiltration, and custom formats add fields like instance-id and tcp-flags. Reading the tuple first builds fast investigative intuition.

Frequently asked questions

Is the “Reading Flow Log Records and Fields” lesson free?

Yes — the full text of “Reading Flow Log Records and Fields” is free to read here on the web, and the AWS Security Academy course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the AWS Security Academy course, upgrade to CoddyKit PRO.

What will I learn in “Reading Flow Log Records and Fields”?

Decode source, destination, ports, and the accept or reject action. You practise AWS Security Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.

Do I need any experience to start AWS Security Academy?

No prior experience is required. AWS Security Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 2 of 4, so you can start here or from the beginning and move at your own pace.

How long does the “Reading Flow Log Records and Fields” lesson take?

Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.

Can I write and run code in this AWS Security Academy lesson?

Yes. Every AWS Security Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.

All lessons in this course

  1. What VPC Flow Logs Capture
  2. Reading Flow Log Records and Fields
  3. Flow Logs at VPC, Subnet, and ENI Levels
  4. Spotting Suspicious Traffic in Flow Logs
← Back to AWS Security Academy