type t = Ipaddr.V4.t option
type +'a io = 'a Lwt.t
type ipaddr = Ipaddr.V4.t
type buffer = Cstruct.t
type callback = src:ipaddr -> dst:ipaddr -> buffer -> unit io
val pp_ipaddr : Format.formatter -> Ipaddr.V4.t -> unit
val mtu : 'a -> int
val disconnect : 'a -> unit Lwt.t
val connect : 'a -> unit Lwt.t
val input : 'a -> tcp:'b -> udp:'c -> default:'d -> 'e -> unit Lwt.t
val write : 'a -> ?fragment:'b -> ?ttl:'c -> ?src:'d -> 'e -> 'f -> ?size:'g -> 'h -> 'i -> 'j Lwt.t
val get_ip : 'a -> Ipaddr.V4.t list
val src : 'a -> dst:'b -> 'c
val pseudoheader : 'a -> ?src:'b -> 'c -> 'd -> 'e -> 'f