IP spoofing involves disguising the source IP address of packets sent to a target system to make it appear the packets are coming from a trusted system. There are two main types of IP spoofing attacks - blind spoofing where the attacker cannot see acknowledgement packets, and non-blind where they can. Spoofing is commonly used for denial of service attacks by flooding a target with spoofed packets. It is difficult to detect spoofing, but methods include ingress/egress filtering, checking IP identification numbers, and analyzing flow control and packet retransmission patterns.