[followup-to set]
In article <(E-Mail Removed)>, Ramanan wrote:
> Before I go ahead recompiling the kernel on a slow machine ....
(Why not compile it on a faster machine, then copy it over?)
> is there any other suggestions?
Please don't top-post.
> Could I simply fix the error due to iptablesmore easily?
You definitely do have a broken kernel.
>>> If a machine was configured to do packet filtering through iptables
>>> and then the kernel was recompiled in such a way the iptables support
>>> might have been broken would this affect simple ip masquerading?
If you don't have the ip_tables and iptable_nat drivers, you cannot do
NAT of any kind. Further if you lack the ipt_MASQUERADE driver, you
cannot do masquerading. Each table and each special target within a
table (other than ACCEPT or DROP) requires a driver.
>>> I am faced with a RH 8.0 based install with a recompiled kernel (to
>>> accomodate a PCI based ADSL card)
Do you know for a fact that the only way to run this card was to build a
more recent kernel? Did you try "modprobe $DRIVER"? What was the driver
you built in? Was it only available in a patch, or an important bugfix
only in a pre-* kernel?
If you must build a kernel, begin with your distro's kernel config as a
template. The kernel's built-in defaults leave out a lot of stuff that
distro kernel builders put in. Copy their config file to .config in the
top level of the kernel source tree you're using. Read the help items,
and if you're unsure, do not change any settings.
A common mistake of inexperienced people is to advise those with even
less experience to compile a custom kernel. In many cases a simple
modprobe command would have solved the problem. Yes, there are reasons
why one might choose to customise a kernel, but if you start with bad
default values and you do not know what you're doing, you're certain to
make a big mess of things.
>>> and it is not clear what other
>>> system tools and libraries were upgraded at this point.
You don't know what you have upgraded?
>>> root@Gateway root]# ifconfig eth0
>>> eth0 Link encap:Ethernet HWaddr 00:40:63:C0:B8:2A
>>> inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0
I don't use PPPoE, but it's my understanding that the Ethernet interface
would not need an IP. Maybe you're using one NIC as both internal and
external interface? I don't know if that can be done. (Surely someone
else here knows.)
>>> Unfortunately but interestingly the only public IP it can ping
>>> successfully is Gateway's ppp0 interface's static IP ...regardless of
Unfortunate perhaps, but not surprising. Without NAT there's no way for
anything to come back to a private IP.
>>> Have I performed enough tests?
Too many.

The problem is here:
>> [root@Gateway root]# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
That should be the external interface, ppp0 ...
>> iptables v1.2.7a: can't initialize iptables table `nat': iptables who?
>> (do you need to insmod?)
.... but of course, lacking kernel support, even correct iptables rules
will fail.
--
/dev/rob0 - preferred_email=i$((28*28+28))@softhome.net
or put "not-spam" or "/dev/rob0" in Subject header to reply