func NewCustomARP(mac ethernet.MAC, ip Address, eth ethernet.Layer, expiration, cleanupInterval, queryInterval time.Duration, timeout int) ARP {
	l := &defaultARP{
		sourceMAC:     mac,
		sourceIP:      ip,
		eth:           eth,
		cache:         cache.New(expiration, cleanupInterval),
		queryInterval: queryInterval,
		timeout:       timeout,
		requests:      make(map[Address]*pendingARPRequest),
	}
	go l.run()
	return l
}
// NewCustomARP will create a default ARP interface with a custom configuration.
NewCustomARP will create a default ARP interface with a custom configuration.
// NewCustomARP will create a default ARP interface with a custom configuration .
func NewCustomARP(mac ethernet.MAC, ip Address, eth ethernet.Layer, expiration, cleanupInterval, queryInterval time.Duration, timeout int) ARP {
	l := &defaultARP{
		sourceMAC:     mac,
		sourceIP:      ip,
		eth:           eth,
		cache:         cache.New(expiration, cleanupInterval),
		queryInterval: queryInterval,
		timeout:       timeout,
		requests:      make(map[Address]*pendingARPRequest),
	}
	go l.run()
	return l
}
func NewCustomARP ( mac ethernet . MAC , ip Address , eth ethernet . Layer , expiration , cleanupInterval , queryInterval time . Duration , timeout int ) ARP { l := & defaultARP { sourceMAC : mac , sourceIP : ip , eth : eth , cache : cache . New ( expiration , cleanupInterval ) , queryInterval : queryInterval , timeout : timeout , requests : make ( map [ Address ] * pendingARPRequest ) , } go l . run ( ) return l }
NewCustomARP will create a default ARP interface with a custom configuration.
NewCustomARP will create a default ARP interface with a custom configuration .