Support Forum
The Forums are a place to find answers on a range of Fortinet products from peers and product experts.
cryptochrome
New Contributor III

Getting 3G/4G USB Modem to work

Hi guys,

 

I am struggling to get a USB 3G/4G Modem (Huwaei E3276) to work. The FGT-51E does recognize the modem and I can set it up in a way that is starts dialling, but I never get a connection.

 

If I use the modem on my PC with the exact same settings (same APN, username and what have you), I have no issues. 

 

Has anyone ever gotten this to work?

 

Here is what I get in a debug output while the modem is dialling:

 

FGT51E3U16000385 # modemd: run_state_machine state 1(inactive)
modemd: Launch modem due to manual dial.
modemd: Begin dialing: redials left = 99999
modemd: dev=/dev/ttyusb0 tel=*99#
modemd: modem state changed: 1(inactive) -> 2(dialing)
chat: abort on (BUSY)
chat: abort on (NO DIAL TONE)
chat: abort on (NO DIALTONE)
chat: abort on (NO ANSWER)
chat: abort on (ERROR)
chat: send (atz^M)
chat: expect (OK)
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-98,-7^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-98,-7^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-99,-8^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-99,-7^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-98,-7^M
chat: ^M
chat: ^RSSI:20^M
chat: ^M
chat: ^LTERSRP:-99,-6^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-99,-7^M
chat: ^M
chat: ^RSSI:20^M
chat: ^M
chat: ^LTERSRP:-99,-6^M
chat: ^M
chat: ^RSSI:20^M
chat: ^M
chat: ^LTERSRP:-99,-7^M
chat: ^M
chat: ^RSSI:20^M
chat: ^M
chat: ^LTERSRP:-99,-7^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-99,-7^M
chat: ^M
chat: ^RSSI:20^M
chat: ^M
chat: ^LTERSRP:-98,-6^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-98,-7^M
chat: atz^M^M
chat: OK
chat: -- got it

chat: send (ath0^M)
chat: abort on (NO CARRIER)
chat: expect (OK)
chat: ^M
chat: ath0^M^M
chat: OK
chat: -- got it

chat: send (ats7=90^M)
chat: timeout set to 90 seconds
chat: expect (OK)
chat: ^M
chat: ats7=90^M^M
chat: OK
chat: -- got it

chat: send (AT+CGDCONT=1,"IP","internet.t-mobile"^M)
chat: expect (OK)
chat: ^M
chat: AT+CGDCONT=1,"IP","internet.t-mobile"^M^M
chat: OK
chat: -- got it

chat: send (atd*99#^M)
chat: expect (CONNECT)
chat: ^M
chat: atd*99#^M^M
chat: CONNECT
chat: -- got it

chat: send (^M)
modemd: modem_ppp_start:406 primary
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
get_cur_modem_info:1706 force=0 inited=1
get_cur_modem_info:1706 force=0 inited=1
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
LCP: timeout sending Config-Requests
Connection terminated.
modemd: run_state_machine state 2(dialing)
modemd: Unable to connect to remote server "*99#"
modemd: modem state changed: 2(dialing) -> 4(hangingup)
modemd: modem_ppp_stop:478 primary
modemd: redials:1 isp:0 dev:/dev/ttyusb0 tel:*99#
modemd: run_state_machine state 4(hangingup)
modemd: modem state changed: 4(hangingup) -> 0(uninit)
modemd: run_state_machine state 0(uninit)
modemd: modem state changed: 0(uninit) -> 1(inactive)
modemd: run_state_machine state 1(inactive)
modemd: run_state_machine state 1(inactive)
modemd: run_state_machine state 1(inactive)
modemd: run_state_machine state 1(inactive)
modemd: run_state_machine state 1(inactive)
modemd: run_state_machine state 1(inactive)
modemd: run_state_machine state 1(inactive)

 

FYI:

 

I am trying to connect to Deutsche Telekom's LTE network in Germany.

16 REPLIES 16
emnoc
Esteemed Contributor III

Any snapshot of the sys modem config?

 

PCNSE 

NSE 

StrongSwan  

PCNSE NSE StrongSwan
cryptochrome
New Contributor III

Sure, here you go. Thanks!

 

config system modem
    set status enable
    set phone1 "*99#"
    set username1 "t-mobile"
    set passwd1 ENC xxx
    set extra-init1 "AT+CGDCONT=1,\"IP\",\"internet.telekom\""
    set distance 100
end
 

emnoc
Esteemed Contributor III

 

    set username1 "t-mobile"
    set passwd1 ENC xxx



Do you have to use a password for t-mobile DE?

 

I would unset those 2 fields and try again .

 

 

PCNSE 

NSE 

StrongSwan  

PCNSE NSE StrongSwan
cryptochrome
New Contributor III

Yes, they need a username and password. But just to make sure, I just tried without it, but it doesn't make a difference. I keep getting this repeating message in the debug log, until it gives up:

 

 

modemd: modem_ppp_start:406 primary
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number D864556C] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)

emnoc
Esteemed Contributor III

So PPP  LCP part of he negoiation is failing. This could be any of the following;

 

AUTHENTICATION

AUTHEN type ( chap pap msChap )

 

 

So I would double check the  above and roll thru the available authtype if you believe the username/password are correct;

 

e,g ( would set pap  for dialup#1)

 

config sys modem

  set authtype1 pap

end

 

 

If that doesn't work, try the  3g-modem on a none 51E and see what happens. If I recall correctly, the  pecking order is pap and than chap and mschap use a ? mark to see  the options and ordering. Fortinet has made some changes in this area depending on  model and code from iirc.

 

 

Ken

 

 

PCNSE 

NSE 

StrongSwan  

PCNSE NSE StrongSwan
Itguy
New Contributor

Good luck with this. We struggled with USB modems directly into the Fortinet's for over a month before realizing that this is the single worst aspect of Fortinet IMO. Now we use Cradles if we want to interface a USB with a Fortinet.

Even Fortinet support finally gave up back then on us. My advice is to not even try.

 

cryptochrome wrote:

Hi guys,

 

I am struggling to get a USB 3G/4G Modem (Huwaei E3276) to work. The FGT-51E does recognize the modem and I can set it up in a way that is starts dialling, but I never get a connection.

 

If I use the modem on my PC with the exact same settings (same APN, username and what have you), I have no issues. 

 

Has anyone ever gotten this to work?

 

Here is what I get in a debug output while the modem is dialling:

 

FGT51E3U16000385 # modemd: run_state_machine state 1(inactive)
modemd: Launch modem due to manual dial.
modemd: Begin dialing: redials left = 99999
modemd: dev=/dev/ttyusb0 tel=*99#
modemd: modem state changed: 1(inactive) -> 2(dialing)
chat: abort on (BUSY)
chat: abort on (NO DIAL TONE)
chat: abort on (NO DIALTONE)
chat: abort on (NO ANSWER)
chat: abort on (ERROR)
chat: send (atz^M)
chat: expect (OK)
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-98,-7^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-98,-7^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-99,-8^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-99,-7^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-98,-7^M
chat: ^M
chat: ^RSSI:20^M
chat: ^M
chat: ^LTERSRP:-99,-6^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-99,-7^M
chat: ^M
chat: ^RSSI:20^M
chat: ^M
chat: ^LTERSRP:-99,-6^M
chat: ^M
chat: ^RSSI:20^M
chat: ^M
chat: ^LTERSRP:-99,-7^M
chat: ^M
chat: ^RSSI:20^M
chat: ^M
chat: ^LTERSRP:-99,-7^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-99,-7^M
chat: ^M
chat: ^RSSI:20^M
chat: ^M
chat: ^LTERSRP:-98,-6^M
chat: ^M
chat: ^RSSI:21^M
chat: ^M
chat: ^LTERSRP:-98,-7^M
chat: atz^M^M
chat: OK
chat: -- got it

chat: send (ath0^M)
chat: abort on (NO CARRIER)
chat: expect (OK)
chat: ^M
chat: ath0^M^M
chat: OK
chat: -- got it

chat: send (ats7=90^M)
chat: timeout set to 90 seconds
chat: expect (OK)
chat: ^M
chat: ats7=90^M^M
chat: OK
chat: -- got it

chat: send (AT+CGDCONT=1,"IP","internet.t-mobile"^M)
chat: expect (OK)
chat: ^M
chat: AT+CGDCONT=1,"IP","internet.t-mobile"^M^M
chat: OK
chat: -- got it

chat: send (atd*99#^M)
chat: expect (CONNECT)
chat: ^M
chat: atd*99#^M^M
chat: CONNECT
chat: -- got it

chat: send (^M)
modemd: modem_ppp_start:406 primary
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
get_cur_modem_info:1706 force=0 inited=1
get_cur_modem_info:1706 force=0 inited=1
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
SND: LCP Configure_Request id(1) len(20) [Asnync_Control_Character_Map 00 00 00 00] [Magic_Number 44F924EF] [Protocol_Field_Compression] [Address-and-Control-Field-Compression]
modemd: run_state_machine state 2(dialing)
LCP: timeout sending Config-Requests
Connection terminated.
modemd: run_state_machine state 2(dialing)
modemd: Unable to connect to remote server "*99#"
modemd: modem state changed: 2(dialing) -> 4(hangingup)
modemd: modem_ppp_stop:478 primary
modemd: redials:1 isp:0 dev:/dev/ttyusb0 tel:*99#
modemd: run_state_machine state 4(hangingup)
modemd: modem state changed: 4(hangingup) -> 0(uninit)
modemd: run_state_machine state 0(uninit)
modemd: modem state changed: 0(uninit) -> 1(inactive)
modemd: run_state_machine state 1(inactive)
modemd: run_state_machine state 1(inactive)
modemd: run_state_machine state 1(inactive)
modemd: run_state_machine state 1(inactive)
modemd: run_state_machine state 1(inactive)
modemd: run_state_machine state 1(inactive)
modemd: run_state_machine state 1(inactive)

 

FYI:

 

I am trying to connect to Deutsche Telekom's LTE network in Germany.

emnoc
Esteemed Contributor III

Will if my input counts that's a bogus reply imho, the E3276 is a support modem from the fortiOS  aspect. I'm sure it's a auth issue that's keeping the modem down.

Most of the  huawei modem do work some requires more tweaking than others.

 

Ken

 

PCNSE 

NSE 

StrongSwan  

PCNSE NSE StrongSwan
Itguy
New Contributor

Good luck then. 2 in-house Fortinet Engineers here, and 7 support tickets later we gave up getting these to work directly with Fortinet. Cradle is cheaper, easier and more reliable.

 

After our tickets were escalated we were told 'it should work, we don't know why'.. That's when the cradles came in.

cryptochrome
New Contributor III

We will see. I have a support ticket open with them and will have a call with them tomorrow afternoon.

 

As for the different authentication schemes, Ken, my understanding is they are all enabled and the box goes through them until one matches or whatever is negotiated. I might be wrong, but this is what the default config looks like if you are not tampering with the auth config:

 

FGT51E3U16000385 (modem) # get
status : enable 
pin-init : 
network-init : 
lockdown-lac : 
mode : standalone 
auto-dial : disable 
dial-on-demand : disable 
idle-timer : 5
redial : none 
reset : 0
holddown-timer : 60
connect-timeout : 90
wireless-port : 0
dont-send-CR1 : disable 
phone1 : *99# 
dial-cmd1 : 
username1 : 
passwd1 : *
extra-init1 : AT+CGDCONT=1,"IP","internet.telekom" 
peer-modem1 : generic 
ppp-echo-request1 : enable 
authtype1 : pap chap mschap mschapv2 

 

To me it "feels" like it is dialing but never getting a response, but the logs and your observation, Ken, speak a different language. It's most likely something during the PAP/CHAP negotiation that goes wrong.

 

I'll try setting authtype explicitly and try each of them.

 

 

 

 

Top Kudoed Authors