searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

arp paramater

2024-06-17 07:05:45
1
0

1. ip -s neigh
172.16.0.1 dev eth0 lladdr 36:f7:9b:b3:77:e1 ref 1 used 412/0/25 probes 4 REACHABLE
used/confirmed/updated

used: 在arp entry 非NUD_CONNECTED状态下发送报文更新
confirmed:  在收到相应的arp reply或者 被dst->confirmed(上层协议icmp, tcp, udp confirm相应的路由) 
updated: 在entry状态发生变化的时候更新
icmp,udp: 需要用户态程序sendmsg加上MSG_CONFIRM flag
tcp: tcp_ack后会自动confirm
如果tcp, udp, icmp接收到了有效的报文就可以confirm掉该路由对应的arp entry

ip_output->dst_neigh_output(){
        if (dst->pending_confirm) { 
                unsigned long now = jiffies; 
                dst->pending_confirm = 0;  
                /* avoid dirtying neighbour */  
                if (n->confirmed != now) 
                        n->confirmed = now; 
        }   
}

2. 参数
# ls /proc/sys/net/ipv4/neigh/eth0/    
retrans_time: PROBE, NONE, INCOMPLETE, FAILED状态下, 下次发送(可以发送的话)arp请求的timer, 默认1s
delay_first_probe_time: 进入DELAY状态后到PROBE的timer, 默认5s
unres_qlen_bytes: 发送报文时arp entry状态为INCOMPLETE, 需要把报文放于neigh->arp_queue中, queue中存放最多的字节数, 默认65535
base_reachable_time: arp entry进入REACHABLE后的老化确认timer
app_solicit+mcast_solicit: FAILED/NONE时, 该值为0就不能去PROBE, 默认0+3 
app_solicit+mcast_solicit+ucast_solicit: 在INCOMPELETE状态下为max_retry值, 默认0+3+3
app_solicit+mcast_resolicit+ucast_solicit: 在PROBE状态下为max_retry值,默认0+0+3

0条评论
0 / 1000
w****n
15文章数
0粉丝数
w****n
15 文章 | 0 粉丝