ifname='ens7'
ra = Ether(src=get_if_hwaddr(ifname))/Dot1Q(vlan=0)/Dot1Q(vlan=0)
ra /= IPv6(dst='ff02::1')
ra /= ICMPv6ND_RA(chlim=64, prf='High', routerlifetime=1800)
ra /= ICMPv6NDOptSrcLLAddr(lladdr=get_if_hwaddr(ifname))
ra /= ICMPv6NDOptPrefixInfo(prefix="2001:db8:1::", prefixlen=64, validlifetime=1810, preferredlifetime=1800)
sendp(ra, iface=ifname)
Cleaner example:
ifname='ens7' get_if_ hwaddr( ifname) )/Dot1Q( vlan=0) /Dot1Q( vlan=0) RA(chlim= 64, prf='High', routerlifetime= 1800) LAddr(lladdr= get_if_ hwaddr( ifname) ) ixInfo( prefix= "2001:db8: 1::", prefixlen=64, validlifetime=1810, preferredlifeti me=1800)
ra = Ether(src=
ra /= IPv6(dst='ff02::1')
ra /= ICMPv6ND_
ra /= ICMPv6NDOptSrcL
ra /= ICMPv6NDOptPref
sendp(ra, iface=ifname)