# Strange modem issues ...

## Boddah

I've just set up a linux box to act as a gateway for our home internet.  I've got an external 33.6K modem connected to it, and have set up IP forwarding via IPTABLES.  Once I connect the modem, all seem to be working fine.  I have full internet access from my windows box, but after a few minutes (10 - 15 usually, but sometimes a LOT less) things start to go really wrong.  I end up waiting endlessly for HTTP replies, and pretty much nothing (browsers, ftp, seti, kazaa) will establish a connection.

However, if I just ping a site, I DO get a reply (it's quite slow though).  I thought maybe it was something to do with the firewall, but even when I use it directly on the linux box I get the same thing.  The default route is set up properly, the MTU etc.. all according to the PPP howto.

Does anyone know if it might be the modem itself??  I'm not sure exactly what it is, but I'm pretty sure it's a standard rockwell chipset.

Anyway, I'm totally stumped, so any help would be greatly appreciated.

Thanx in advance.

----------

## bonkalot

your first thing should be to isntall a bandwidth monitor on the gateway (bwm kicks arse), and when u aren't using the net at all, see if u are getting alot of traffic.  

Failing that, i would try ether installing X and a http browser on the gateway if it is good enough or even a squid proxy and force your windows machine to use it.  Then u can see if it is a forwarding thing, or a network problem.

just my 2cents.

----------

## Boddah

I don't think it's a problem with IPTABLES.  I can see the lights on both the servers NIC and the modem, so I can see if there's any traffic coming and going.  I do have X installed on the server, but since I do everything remotely, I was using LYNX to try browsing the web on it.  HTTP requests are sent but no reply ever arrives.

I tried using the modem on my desktop installation of Mandrake 8.2 and I was getting the same results there.  Does this mean it's something to do with the modem itself??  The modem works fine in windows.

Anyway, keep the ideas coming  :Smile: 

----------

## bonkalot

maybe a funky INIT string, go having a look around on GOOGLE by using your modem make and model, or FCC code if u can find it.

----------

## Boddah

Well, I've changed my modem AT commands, and I'm confident it's all proper now, all the appropriate compression protocols seem to be working.  I'm still getting the same problem though.  I've included my firewall script at the bottom, so hopefully if this is the problem someone can find the errors in it.

```

###################################################

#                                                 #

# My Customised rc.firewall settings for IPTABLES #

#                                                 #

###################################################

echo -e "\nLoading Updated Firewall Settings....\n"

# The location of the IPTABLES program

IPTABLES=/sbin/iptables

# The EXTERNAL and INTERNAL interfaces for the network

EXTIF="ppp0"

INTIF="eth0"

echo "     External Network Interface:  $EXTIF"

echo "     Internal Network Interface:  $INTIF"

# F;ushing the ruleset and setting default policy

echo "     Clearing and existing rules and setting default policy..."

$IPTABLES -F INPUT

$IPTABLES -F OUTPUT

$IPTABLES -F FORWARD

$IPTABLES -P INPUT ACCEPT

$IPTABLES -P OUTPUT ACCEPT

$IPTABLES -P FORWARD ACCEPT

$IPTABLES -t nat -F

# letting ident in couldn't hurt

$IPTABLES -A INPUT -i ppp0 -p tcp --dport 113 -j ACCEPT

# let some ICMP stuff in (Echo Reply, Destination Unreachable, Redirect, Time Exceeded)

$IPTABLES -A INPUT -p icmp --icmp-type 0 -j ACCEPT

$IPTABLES -A INPUT -p icmp --icmp-type 3 -j ACCEPT

$IPTABLES -A INPUT -p icmp --icmp-type 5 -j ACCEPT

$IPTABLES -A INPUT -p icmp --icmp-type 11 -j ACCEPT

echo "     Ident and ICMP inbound connections configured"

$IPTABLES -t filter -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

# IP Forwarding and Masquerading

# echo "     FWD: Allow all connection OUT and only existing and related ones IN"

$IPTABLES -A FORWARD -i $EXTIF -o $INTIF -j ACCEPT

$IPTABLES -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT

$IPTABLES -A FORWARD -j LOG

echo "     Enabling SNAT (MASQUERADE) functionality on $EXTIF"

$IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE

# IP Forwarding Section

echo "     Enabling IP Forwarding..."

echo "1" > /proc/sys/net/ipv4/ip_forward

# Dynamic IP Section

echo "     Enabling Dynamic Address..."

echo "1" > /proc/sys/net/ipv4/ip_dynaddr

#######

echo -e "\nFirewall Settings are  Updated.\n"

```

Don't point out the fact that this firewall is VERY insecure, just what might be causing my problem  :Smile: 

----------

## Boddah

Done some more digging, and have found these error messages in my syslog:

```

Jul 30 20:43:11 emporium pppd[321]: Unsupported protocol 0x3e received

Jul 30 20:43:11 emporium pppd[321]: sent [LCP ProtRej id=0x2 00 3e 0d 0a 3c 62 3e 48 54 4d 4c 3d 4c

4c 61 33 ff 33 aa 75 6d 69 6e 64 65 26 63 74 3d 31 3c 69 ...]

Jul 30 20:43:12 emporium pppd[321]: rcvd [proto=0x68] 74 74 70 3a 69 66 20 28 69 73 2f 61 3e 3c 75 0

0 8b 29 5c 15 38 4a 3f c0 32 45 4e 41 55 2f 34 3c ...

Jul 30 20:43:12 emporium pppd[321]: Unsupported protocol 0x68 received

Jul 30 20:43:12 emporium pppd[321]: sent [LCP ProtRej id=0x3 00 68 74 74 70 3a 69 66 20 28 69 73 2f

61 3e 3c 75 00 8b 29 5c 15 38 4a 3f c0 32 45 4e 41 55 2f ...]

Jul 30 20:43:12 emporium pppd[321]: rcvd [proto=0x74] 61 68 6f 44 35 3b 20 b4 79 25 32 32 29 22 3e 5

b 7e 3e 1a 64 69 6e 67 3d 30 20 63 00 14 62 70 a0 ...

Jul 30 20:43:12 emporium pppd[321]: Unsupported protocol 0x74 received

Jul 30 20:43:12 emporium pppd[321]: sent [LCP ProtRej id=0x4 00 74 61 68 6f 44 35 3b 20 b4 79 25 32

32 29 22 3e 5b 7e 3e 1a 64 69 6e 67 3d 30 20 63 00 14 62 ...]

Jul 30 20:43:12 emporium pppd[321]: rcvd [proto=0x30] 98 6f 6e 65 3b 66 6f 3b 63 6b 20 84 d4 af d5 5

4 45 4c 2a 50 13 3c 16 f9 85 db 66 61 64 9c ca 20 ...

Jul 30 20:43:12 emporium pppd[321]: Unsupported protocol 0x30 received

Jul 30 20:43:12 emporium pppd[321]: sent [LCP ProtRej id=0x5 00 30 98 6f 6e 65 3b 66 6f 3b 63 6b 20

84 d4 af d5 54 45 4c 2a 50 13 3c 16 f9 85 db 66 61 64 9c ...]

Jul 30 20:43:12 emporium pppd[321]: rcvd [proto=0x30] 98 2e 63 6f 6d 22 c1 89 20 22 3e 3c 41 20 ec 1

f 54 65 78 74 20 3d e9 9e 61 62 6c 65 20 62 65 20 ...

```

These go on for a while, might it still be an AT commandset problem?  Here's my chat script:

```

exec /usr/sbin/chat -v -E                               \

        TIMEOUT         3                               \

        ABORT           '\nBUSY\r'                      \

        ABORT           '\nNO ANSWER\r'                 \

        ABORT           '\nRINGING\r\n\r\nRINGING\r'    \

        ''              \rAT                            \

        'OK-+++\c-OK'   'AT&FE0V1&C1&D2S95=47S0=0'      \

        'OK-+++\c-OK'   'ATS7=60S30=0L1M1%C3&K3B0N1X3'  \

        'OK-+++\c-OK'   'AT#CID=1'                      \

        'OK-+++\c-OK'   'ATS0=0'                        \

        'OK-+++\c-OK'   'AT'                            \

        'OK-+++\c-OK'   'AT&FE0V1&C1&D2S95=47S0=0'      \

        'OK-+++\c-OK'   'ATS7=60S30=0L1M1%C3&K3B0N1X3'  \

        TIMEOUT         30                              \

        OK              ATDT$TELEPHONE                  \

        CONNECT         ''

```

I know there's a lot of commands in there, I just copied pretty much exactly the same strings windows was using.  I though they would be right seeming as it works in windows.  Don't know much about modems.

Thanx again  :Smile: 

----------

## Boddah

Well, I think I can finally close this thread.  I've just turned off BSD compression and it seems to be working just fine now.  Turns out my ISP doesn't like it.  Thanx for your input anyway  :Smile: 

----------

