I'm not sure this falls under a feature request or a bug. Please move it if necessary.
In the manual the following is stated the following about snmp trap items in 2.0: "For each trap Zabbix finds all corresponding SNMP interfaces on hosts for the received IP or DNS address"
The problem with this is that a network switch or router snmp traps will most likely not have the same source address as is used for monitoring the host. In most networks a host will be monitored using an ip in e.g. an monitoring subnet. Snmp traps will use the loopback address of this device for snmp traps.
I think this behavioir is valid for most SNMP trap implementations and thus would make the Zabbix snmp trap implementation useless, unless some kind of NAT is implemented. I would suggest that an additional ip address can be added per host to solve this issue.