An intrusion detection system (IDS) monitors network traffic and system activities for malicious or unauthorized activity and policy violations. IDS tools detect intrusions by examining network traffic or system files and logs. They alert administrators of important events, generate reports, and some can respond to detected threats by blocking attacks. IDS are used to identify security issues, document threats, and deter policy violations. Common types of IDS include network IDS, host IDS, perimeter IDS, and virtual machine IDS. IDS can operate passively by detecting and logging breaches or actively by automatically responding to threats. IDS complement firewalls by monitoring for internal threats and attacks that evade firewalls.