[Click] Building a packet reflector in click
david johnson
david.lloyd.johnson at gmail.com
Tue Aug 25 18:28:28 EDT 2009
Wow thanks, that was simple, GetIPAddress(16) after IPMirror worked
perfectly! So I'll keep the packet reflector as a nice simple example.
David
On Tue, 2009-08-25 at 13:08 -0700, Cliff Frey wrote:
> I suspect the problem is that IPMirror does not set the dst_ip_anno
> annotation, which is what ARPQuerier uses.
>
> If you add a GetIPAddress(IP dst) after the IPMirror, you might have
> better luck.... but I'm not positive if that'll be enough. It is hard
> to know as I don't know what your exact device configuration (ip,
> subnet, gateway, etc) is.
>
> I'd add ARPPrint elements after c[1] and arpq[1] to see what ARP
> traffic you are generating/receiving.
>
> Cliff;
>
> On Tue, Aug 25, 2009 at 12:57 PM, david johnson
> <david.lloyd.johnson at gmail.com> wrote:
> Hi
>
> I presented a course on click today - used a lot of material
> from
> University of Antwerp - thanks Bart and Michael. I thought up
> some
> tutorials for them to practice their concepts and I thought
> building a
> packet reflector would be easy - until I tried to solve it
>
> I tried something like this:
>
> define($DEV ath0)
>
> FromDevice($DEV)
> -> c :: Classifier(12/0800, 12/0806 20/0002)
> -> CheckIPHeader(14)
> -> IPMirror
> -> StripToNetworkHeader
> -> Print ("Before ARP",200)
> -> arpq :: ARPQuerier($DEV)
> -> Print ("After ARP",200)
> -> IPPrint
> -> q :: Queue
> -> ToDevice($DEV)
>
>
> arpq[1] -> q;
> c[1] -> [1] arpq;
>
> But it doesn't work - the IP address swapping is working - but
> it never
> gets to the Print("After ARP",200) statement.
>
> Is this a hard problem or is their a simple solution that I'm
> missing
>
> I'm trying to think out a set of click exercises that get
> progressively
> harder for the students to do. Firstly without writing their
> own
> elements and then with including writing their own elements -
> any ideas
> will be most welcome. This would probably be a nice addition
> to the
> documentation - exercises like these and their solutions.
>
> Regards
> David
>
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>
More information about the click
mailing list