|
Networking gurus (especially Linux)
I'm having problems getting connection sharing via IP Masquerading (IP-forwarding) to work. I have two machines.
A) SuSE Linux 8.0, two ethernet cards.
B) Windows XP Pro, 1 ethernet card
The ethernet cards in machine "A" are eth0, which connects to the internet and eth1, which connects to machine "B".
I've assigned the IP addresses as:
eth0 in machine "A": assigned by DHCP (when I assign an address manually, it breaks everything and I can't even ping internal network machines)
eth1 in machine "A": 192.168.0.2 (or .1 during some tests)
Machine "B": 192.168.0.3
On the XP machine I have the gateway set to 192.168.0.2 (eth1), LMHOSTS and WINS stuff disabled.
I've got IP forwarding rules set up using IP_TABLES (not IP_CHAINS) and a little startup script that I snagged from a how-to to fire up all the proper modules.
Now, I can ping everything on the internal network just fine. No problems pinging the XP machine from the Linux box and vice versa. I can also ping the ppp0 address (65.whatever from my ISP) from the XP box with no problems.
The problem is, I can't reach anything outside of the internal network from the XP box either by name or IP address. I always get "can't find the host" errors.
/proc/sys/net/ipv4/ip_forward is set to "1" which was the only real suggestion I found for a problem like mine. When I run tcpdump on the Linux machine and try to connect to outside addresses, tcpdump shows
(with tcpdump listening on eth1)
192.168.0.3 > (whatever address I am trying to ping): icmp: echo request
192.168.0.3 > (whatever address I am trying to ping): icmp: echo request
192.168.0.3 > (whatever address I am trying to ping): icmp: echo request
On the XP box it is showing "ping request timed out".
This is driving me nuts. I'd really appreciate help with this.
Thanks,
SpaceAce
|