Ip forward

From WebOS Internals
Revision as of 00:02, 2 March 2010 by Smoofra (talk | contribs)
Jump to navigation Jump to search

You might have noticed that /proc/sys/net/ipv4/ip_forward keeps getting reset to 0.

There are three places I've found that cause this to happen. First is /etc/network/options. Go in there and change the line

ip_forward=no

to

ip_forward=yes

Next is /etc/pmnetconfig/if-down. Comment out the lines

   ${LOG} "${ECHO} 0 >/proc/sys/net/ipv4/ip_forward"
   ${ECHO} 0 >/proc/sys/net/ipv4/ip_forward

Last and not least, is the binary /usr/bin/PmNetConfigManager. First, make a fake place for it to write to

mount -o remount,rw / 
mkdir /media/cryptofs/fake/sys/net/ipv4/ip_forward
ln -s /media/cryptofs/fake /fake
mount -o remount,ro /

Next, patch /usr/bin/PmNetConfigManager so it writes to /fake/sys/net/ipv4/ip_forward instead of /proc/sys/net/ipv4/ip_forward. Just open it up in a hex editor, find that path, and change "proc" to "fake". Make sure you only change those four bytes. You should probably also make sure you have a backup of the original binary. After you replace PmNetConfigManager, restart it.

stop PmNetConfigManager
start PmNetConfigManager