# Problem with the first ICMP\_REDIRECT message

- From: Li Wei \<hidden\>
- Date: 2011-11-30 03:10:41 
- List: netdev
- Page: https://ratatoskr.run/netdev/2011/11/10883753
- Thread: https://ratatoskr.run/netdev/2011/11/10883753/t.md

```text
Hi all, 

I am doing some tests on ICMP_REDIRECT messages and found that I never receive
the first ICMP_REDIRECT message, but the following REDIRECT messages was normal.

My test environment as follow:
three pc:
PC A:
	IP: 192.168.0.1 MAC: HW:0A
PC B:
	IP: 192.168.0.2 MAC: HW:0B
	module nf_nat loaded and at least one rule in nat table(rule content not concern)
PC C:
	IP: 192.168.0.3 MAC: HW:0C

enable ip forwarding on PC B:
# echo 1 > /proc/sys/net/ipv4/ip_forward

add a static arp on PC A:
# arp -s 192.168.0.3 HW:0B

ping 192.168.0.3 on PC A:
# ping -c1 192.168.0.3

I expect that PC A will receive a ICMP_REDIRECT message from PC B, but nothing
received.

ping three times 192.168.0.3 on PC A:
# ping -c3 192.168.0.3 

PC A got two ICMP_REDIRECT messages from PC B, the first one missing.

After some code search, I found in function nf_nat_icmp_reply_translation() the first
ICMP_REDIRECT message was droped because the ct->status is not IPS_NAT_DONE_MASK.


Does anyone has some suggestion?
```
