Jiwoong,
You raise an interesting question:
This is about the requirement level in the Internet specification.
If a statement has the requirement level of 'MUST NOT' while it
has an exceptional case, and while the exceptional case does not
elucidate its requirement level, what is the appropriate requirement
level of this exceptional case ?
I guess the answer is 'MAY'. Are you agreeable to this ?
I think ICMPv6 specification has the similar statements in it,
regarding to the requirement level of the generation of ICMPv6
packet in response to a multicast packet or to a link local
multicast packet.
If some standard says that you "MUST NOT" generate a non-multicast
packet in response to a multicast packet, that does not mean that
you are not allowed to write an application that bridges multicast
traffic if it is required.
It just has to be selective, i.e., so it won't get out of control.
(NOT P) does not imply (NOT (C AND P)).
Cheers,
James