RIP $100 {awarded}
-
Although I realize this is already on the schedule, I donate to open source projects that make my life and job easier, and since I prefer incentive based donations, I would like to reward a developer to fast track the addition RIP to pfSense. Please post here and pm me when completed.
Thank you,
-Internet Professionals, LLC
-Pete
-pc@ipro.net -
Although I realize this is already on the schedule, I donate to open source projects that make my life and job easier, and since I prefer incentive based donations, I would like to reward a developer to fast track the addition RIP to pfSense. Please post here and pm me when completed.
Thank you,
-Internet Professionals, LLC
-Pete
-pc@ipro.netPete, what are the exact specifications you want? Just advertising stuff from the kernel routing table? Learning routes from the network presumably. Any more controls on it? Or just a basic wrapper around routed(8)? As you know, this can't make 1.0, I think it can be made as a package (although at some point I'll probably want to move it into core to sit side by side with olsr) and will go that route (unless your machines are embedded). Let me know what platform this needs to run on. Thanks
–Bill
-
" what are the exact specifications you want? "
I'll need to discuss this with our Net Admin, will post more specifics soon.
-Pete -
" what are the exact specifications you want? "
I'll need to discuss this with our Net Admin, will post more specifics tomorrow.
-PeteThanks. I'll start working on this, this evening and put in the "obvious" stuff (and stuff I'd want personally) to get ahead of this. Anything else you add, I should be able to add to it w/out much problem.
Here's the FreeBSD man page on their routed(8):
http://www.freebsd.org/cgi/man.cgi?query=routed&apropos=0&sektion=0&manpath=FreeBSD+6.0-RELEASE+and+Ports&format=html–Bill
-
I apologize for the delay. The past few days, we've been spending any spare time concentrating on setting up a pfSense OLSR mesh; but, deployment has been taking longer than it normally should because our manager wanted us to start deploying olsr this week even though olsr is not quite finished (we've still got two remaining unresolved issues from the olsr bounty that Scott is working on). I plan to compose & post the specifics about the RIP bounty as soon as time permits.
Thank you,- Internet Professionals, LLC
- Pete
- pc@ipro.net
-
I apologize for the delay. The past few days, we've been spending any spare time concentrating on setting up a pfSense OLSR mesh; but, deployment has been taking longer than it normally should because our manager wanted us to start deploying olsr this week even though olsr is not quite finished (we've still got two remaining unresolved issues from the olsr bounty that Scott is working on). I plan to compose & post the specifics about the RIP bounty as soon as time permits.
Thank you,- Internet Professionals, LLC
- Pete
- pc@ipro.net
OK. I spent a few hours on this on Sunday. Due to some limitations in the package manager backend code, I won't be able to make this package quite as flexible as I was hoping (individual settings per interface), it'll look a little more like the OLSR setup.
I can easily enable/disable interfaces, but all settings (rip 1 vs rip 2, authentication, etc) will have to be global for the box (for now). Let me know if that's going to pose a problem, if not, I'll continue on with this and should have something for you to look at in the next day or two.
–Bill
-
Global settings are ok with me.
Thanks,
-Pete -
OK, it's not complete and not yet in the package XML, but I just committed a RIP package
http://cvstrac.pfsense.com/chngview?cn=12526I'm not sure I caught whether the machine you'd run this on is a full install or embedded. If it's full, then all that should be needed for you to be able to test is to get the package info moved into the package XML.
–Bill
-
Hi Bill,
I run imbedded CF versions. If you prefer, I'll attempt to find some free time at work one day and do a full install on an extra pc and test. As far as what RIP features we desire, we'll be happy if pfSense is simply capable of fully & correctly communicating with other RIP enabled routers/devices (such as RIP versions: V1, V2 broadcast & V2 Multicast).
Thank you,
-Pete -
Hi Bill,
I run imbedded CF versions. If you prefer, I'll attempt to find some free time at work one day and do a full install on an extra pc and test. As far as what RIP features we desire, we'll be happy if pfSense is simply capable of fully & correctly communicating with other RIP enabled routers/devices (RIP versions: V1, V2 broadcast, & V2 Multicast).
Thank you,
-PeteIt'd be easier if you can test with a full install. I've got no problem giving you a patch for embedded later once we've established that it works well. routed is already installed on all the embedded platforms so it's a matter of copying two files over and making a small change to fbegin.inc to enable it (I think - I haven't spent alot of time trying to make this work on embedded, so I may be missing a step, but OLSR is implemented as a package, so this should just hook in the same way).
–Bill
-
I haven't the time to personally test this any time soon. If anyone interested could test this pfSense RIP with even your home router (assuming it has RIP), I can go ahead and award this bounty.
Thanks, -pc -
Do other devs count? I would love to help Bill get some loving, too ;)
-
Of course!
Thanks, -pc -
Of course!
Thanks, -pcThanks, I'll work on wrapping this up this weekend then. Just been waiting for you to have time to be able to test ;)
–Bill
-
Of course!
Thanks, -pcThanks, I'll work on wrapping this up this weekend then. Just been waiting for you to have time to be able to test ;)
–Bill
OK, routed package posted. It has the following features:
Supports RIP v1 and RIP v2
Allows you to choose which interface to run RIP on (the version is global, can't choose per interface)
Allows you to set a RIP v2 password (this will apply to all RIP enabled interfaces)Some of the items I wanted to add (individual settings per interface) weren't an option with our current package code. It was my understanding this wasn't a requirement. If the package is considered acceptable, I'd be willing to create a patch to enable this functionality on an embedded install (packages only work on full installs).
–Bill
-
this a nice package!
-
-
it installs and starts for me.
root 77143 0.0 0.8 1356 956 ?? Ss 11:54PM 0:00.30 /sbin/routedI also see packets on the wire:
[buraglio@precious:~ ] sudo tcpdump -i en1 -vvv -s 1500 port 520 <3045>
tcpdump: listening on en1, link-type EN10MB (Ethernet), capture size 1500 bytes
00:00:48.897769 IP (tos 0x0, ttl 1, id 11754, offset 0, flags [none], length: 92) 192.168.209.1.router > rip2-routers.mcast.net.router: [udp sum ok]
RIPv2, Response, length: 64, routes: 3
Simple Text Authentication data: password
AFI: IPv4: 192.168.209.0/27, tag 0x0000, metric: 1, next-hop: self
AFI: IPv4: dhcp-74-136-192-0.insightbb.com/19, tag 0x0000, metric: 1, next-hop: self
0x0000: 0202 0000 ffff 0002 7061 7373 776f 7264
0x0010: 0000 0000 0000 0000 0002 0000 c0a8 d100
0x0020: ffff ffe0 0000 0000 0000 0001 0002 0000
0x0030: 4a88 c000 ffff e000 0000 0000 0000 0001
00:01:18.899978 IP (tos 0x0, ttl 1, id 725, offset 0, flags [none], length: 92) 192.168.209.1.router > rip2-routers.mcast.net.router: [udp sum ok]
RIPv2, Response, length: 64, routes: 3
Simple Text Authentication data: password
AFI: IPv4: 192.168.209.0/27, tag 0x0000, metric: 1, next-hop: self
AFI: IPv4: dhcp-74-136-192-0.insightbb.com/19, tag 0x0000, metric: 1, next-hop: self
0x0000: 0202 0000 ffff 0002 7061 7373 776f 7264
0x0010: 0000 0000 0000 0000 0002 0000 c0a8 d100
0x0020: ffff ffe0 0000 0000 0000 0001 0002 0000
0x0030: 4a88 c000 ffff e000 0000 0000 0000 0001It starts and stops from the gui.
I'll bounce the box and hopefully get another RIP enabled device on tomorrow.nb
-
Ship it!
j/k
-
Sorry for the delay, I finally got around to bouncing this box that's running routed and found that it was not running after a restart. /usr/local/etc/rc.d/ did not have a startup script for routed which would pobably explain it. I reinstalled the pkg which of course restarted the service but there was still no startup script so I don't expect it to be running after a restart.
So if it operates as I'm reading it should a simple startup script should start it and begin forwarding packets among the connected nets (since the box is acting as a router). I don't have anything else that runs rip close by that I can test with to see but as I saw before it's at least talking as I'd expect it to.This worked at the most basic level (starting and stopping the service) on my box:
–snip
#!/bin/sh
rc_start() {
/sbin/routed
}rc_stop() {
/usr/bin/killall routed
}case $1 in
start)
rc_start
;;
stop)
rc_stop
;;
restart)
rc_stop
rc_start
;;
esac---snip
--nb