Linux - NetworkingThis forum is for any issue related to networks or networking.
Routing, network cards, OSI, etc. Anything is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I am using a redhat EL4 with a newly compiled 2.6.22-10 kernel. I have two ethernets cards in my system, one to connect to to the internet and another to connect to the local network. I am trying to share internet with ip fowarding, but now the problem is that my two cards don't work simultaneously. The two ethernet cards are of the same make. The internet(eth0) does not work when local network card (eth1) is activated(ifup).
What might be the problem? I have the ethernet card driver compiled into the kernel, it is not there as a module. Is is wrong that I din't compile as a module?
if ifconfig or ifup does not report errors when you bring them up, can you try doing a ping out of one interface by using the -I flag. May be interesting to see what your NICs are trying to do.
Are the IP addresses on different subnets? Do you maybe have acpi disabled?
I get this when I am booting, but I have used acpi=force in my grub.conf file.
ACPI: BIOS age (1997) fails cutoff (2001), acpi=force is required to enable ACPIACPI: acpi=force override
If both interfaces were on the same subnet, that could cause a problem. However, you have both on different subnets. I asked about acpi because, once upon a time, there could be a problem with two NIC cards getting the same I/O address range or interupt and I thought if you had acpi disabled you might have the same problem. Plus without acpi I don't know if devices can share interupts.
Could you look at the output of "sudo /sbin/lspci -v".
Also, take a peek at /etc/modprobe.conf. There are some examples where a module has the address space and the interupt given there:
Code:
# options ne io=0x300 irq=5
# Use this if you have two cards:
# options ne io=0x300,0x320 irq=5,7
# options tulip options=0
# options 3c59x options=0
# options 3c501 io=0x280 irq=5
# options 3c503 io=0x280 irq=5 xcvr=0
# options 3c505 io=0x300 irq=10
# options 3c507 io=0x300 irq=10
# options 3c509 irq=10
Notice the line I emphasized. If lspci shows that both devices use the same address space then editing the module's arguments in modprobe.conf might be a solution. There is also a "reserve" kernel option command that might be used to have the kernel not probe a device. If you have the kernel source Documentation installed, this is usually where you can find the kernel module options.
To route the traffic, you will need to set /proc/sys/net/ipv4/ip_forward: echo >1 /proc/sys/net/ipv4/ip_forward, but you can usually do this using your distro's network setup. I've found that the ip_conntrack module needs to be loaded. The name seems to have changed to nf_conntrack_ipv4 or nf_conntrack but they may be blacklisted so I'm not certain on this.
I have compiled the ethernet drivers directly into the kernel, so I think that modprobe is not necessary(right?). I used
Code:
ether=0,0,eth1
in my grub.conf as kernel parameters. Both my NICs are detected and both are using different IRQs. I googled and did some (re)searching on this, but no fix. I want to use linux as my primary system, but for internet i have to rely on my windows system. I don't want to do that, I want to share internet to other systems using Linux. Now I work using ssh(putty) and xming from my windows system. Any other ways that I can do this?
Can you try doing a ping out of one interface by using the -I flag?
When I type this:
ping -I 192.168.0.2 returns the usage.
In the man page it is given as ping -I Interface or address
but
ping -I eth0 gives the same usage.
Is this the way to use it?
Code:
it-etch:~# ping -I eth0 192.168.0.1
PING 192.168.0.1 (192.168.0.1) from 192.168.0.4 eth0: 56(84) bytes of data.
64 bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=0.367 ms
64 bytes from 192.168.0.1: icmp_seq=2 ttl=64 time=0.261 ms
64 bytes from 192.168.0.1: icmp_seq=3 ttl=64 time=0.258 ms
or
Code:
it-etch:~# ping -I 192.168.0.4 192.168.0.1
PING 192.168.0.1 (192.168.0.1) from 192.168.0.4 : 56(84) bytes of data.
64 bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=0.357 ms
64 bytes from 192.168.0.1: icmp_seq=2 ttl=64 time=0.258 ms
64 bytes from 192.168.0.1: icmp_seq=3 ttl=64 time=0.262 ms
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.