RE: NT4.0 RAS modems, null-modem, and creating .inf files

Posted on 1998-06-13
Last Modified: 2013-12-23
RE: NT4.0 RAS modems, null-modem, and creating .inf files

I am trying to setup a NT4.0 workstation to connect to a PPP communications server over a dedicated serial link.

The server is always in PPP mode. It does not require (use, allow) any text based handshake prior to protocol initiation. The NT RAS modem.inf null-modem descriptions require a command of CLIENT to be sent to the host, and then a reply of CLIENTSERVER, and then it sends CLIENT, listens for SERVER, and then registers as connected, and goes into PPP protocol.  

The UniModem null-modem is similar. Therefore these are not useable for my configuration; I need a different null-modem definition.

Some questions; I'm sure they are highly interrelated..

1) What is the relation of the:
   /winnt/system32/inf/standard.inf null-modem, home of [M2700Reg] ; Null-Modem
      M27 = "(Standard Modem Types)"
     M2700 = "Dial-Up Networking Serial Cable between 2 PCs"
   /winnt/system32/ras/modem.inf null-modems [null-modem 9600] ...

   I can add the former as a control/modem/add/, and then select for a RAS port.
   or, can add from the later..

2) Q171015 :
     "if you have not installed an RAS capable modem..."
     -- what determines this?

3) I tried to create my null-modem by editing the entries in /ntsys/system32/.ras/modem.inf
   I modified the 37600 entry into this:
           ;  GRG  
           [Null Modem 57600]



           ;   no command or reply required to connect...
           CONNECT=                  <------ nothing (was CLIENT)
           COMMAND_LISTEN=           <------ nothing (was CLIENTSERVER)

           COMMAND_DIAL=             <------ nothing (was CLIENT)
           CONNECT=                  <------ nothing (was SERVER)

  The salient points are that this is meant to send nothing, and expect no response.

  I would expect this to basically do nothing, just automatically drop into PPP. It says "dialing", waits ~10 seconds, and then gives the error:
   692 - (not responding)
   652 - (invalid response)   ??

   -- Where is the specification for how to write modem specs?

4) I notice that modems added in .../system32/ras/modem.inf do not show up in the control/modems/add list, but modems in /winnt/system32/inf DO show up in RAS setup. What is the relationship here? I read (Q167375) that
   "Windows NT 4.0 does not use the modem.inf file for DUN, However the modem.inf file is required for the setup and configuration of modem devices in RAS properties."

   What does this mean?
   Does it mean I have to have a description in modem.inf, and create a XXX.inf file for it?

5) It seems that only modems from  .../inf/*.inf get logged into .../ModemLogXXX.log, as per the control/modems/setup options. How does one get a log from RAS modems setup by .../ras/modem.inf?

6) MSoft article Q150808 describes how to disable support for Unimodem modems;
    "If you attempt to use a device with RAS that is not suported by Unimodem, you may need to configure RAS to use the modem.inf file instead of using unimodem"

   -- is Unimodem the general mechanism for all the .../inf/*.inf modems?

   -- are these two styles mutually exclusive? i.e. I have a regular modem (Supra) on another port, and want to be able to use it for an alternate DUN path, does disabling UniModem disallow this?

   -- the .hlp file says: "the modem.inf file lists ALL modems supported by RAS."
        "RAS now supports modems through the UniModem, and continues to support
         *.inf modems for legacy systems. To configure a previously installed
         unsupported modem to work with RAS, add an entry for that modem in the
         modem.inf file."

     -- Hmm... the "Dial-Up Networking Serial Cable between 2 PCs" modem is not
        in modem.inf, but is the recommended serial cable null-modem...??

7)  The ras.hlp file describes how to get logging for UniModem RAS modems, by adding a registry key for RasMAn (ugh!), to force creation of a .../ras/device.log file. But I don't get anything for my added new modem description in modem.inf.

8) MSoft RAS help file describes that:
    "when you remove and re-installing a modem the resonse strings are not updated. THIs is a problem only if you have updated or modified the modem.inf file",

    -- So, how does one do that, if you are trying to debug a .inf by trying various strings?

9) The RAS readme file references the Microsoft RAS whitepaper", available at their site;
   I can't find it.

10) Is there a simple way to do this all!?!?!??

Thanks for any information or pointers,

Gregory Guthrie

Question by:guthrie
  • 6
  • 4
LVL 37

Expert Comment

ID: 1564430
M$KB Q142065 may help you, I think.


Author Comment

ID: 1564431
but this article assumes MSoft protocols at both ends, the CLIENT/SERVER exchanges I described.

I need to connect to a server with NO exchange; thus the question is,
how to create a nullmodem.inf file for this.


Expert Comment

ID: 1564432
Two nights ago when you posted this I spent a couple of hours going through msdnlooking for stuff. You have read everything I have, probably, and I must say my head was spinning afterward - the unimodem transition from modem.inf (while still supporting modem.inf) and win95 vs Nt issues make it very tough to figure out what applies to what.

If there was ever a modem.inf format specification document, it's seems it's now gone (or not easily found) since they are abandoning modem.inf.

Tonight I got back to this, and found one article about pad.inf that gives a few clues to the format ("MS RAS and X.25 - Evaluation, Implementation, and Troubleshooting for All RAS Versions"). Since pad.inf looks like a similar format, think a lot of it applies. One thing I gathered was that every COMMAND line expects a response unless followed by "NoResponse". If the response isn't specifically listed in that section of the modem.inf, then it must use the generic responses at the top of the file. So I think that's why your example [Null Modem 57600] doesn't work- the fact you have a CONNECT= means it will wait for a response, even though the CONNECT= string is blank.

I looked through modem.inf to see if there were otehr examples of NoResponse, and I found one: [Fastcomm MonoFRAD]. Its entrie entry is as follows:





Obviously you would change the BPS entries to whatever you need, but I bet that the rest is perfect for what you are trying to do!

I hope this helps... if it works for you, please reject the current answer by bbao, and let me enter an answer so you can give me the points. Good luck!
Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!


Author Comment

ID: 1564433

Thanks, yes, it is an unfortunately messy area.
THe sad thing is that trumpet (or Netmanage, ...) make it so easy, they have seperated dialing
scripts from any MSoft like state machine driven dialing. That was my solution on W95, punt
and use Trumpet. This was not ideal, Trumpet does not support all MS functionalities, and does not port to NT.

Anyway, I will try your suggestion today.

Did you find the "RAS whitepaper" they reference in their readme?
We have an unused MSDN service call ; do you think MSoft would give any useful resolution to a query like this, or just say "not supported unless you use ours"?

Thanks for your diligence and expertise;

Author Comment

ID: 1564434
Dear alamo;
Bravo; it worked.

I increased points --> 400, and send all gratitude.

I have seen this sam question in various formats on the W95 lists (I'm new to NT) for the last two years, and spend many hours chasing it myself.
Thanks for your help.

Accepted Solution

alamo earned 400 total points
ID: 1564435

No, I never found their whitepaper, but I never looked very hard, the web interface irritates me compared to the CDROM.

Glad I could help, and thanks for the extra points!

Author Comment

ID: 1564436
I notice one thing;
The DUN monitor reports "Line bps 28,800" when it is really 115200,
and so specified in modem.inf
and really working at that speed.


Expert Comment

ID: 1564437
Have you checked the modem properties in control panel? I would think that would override the modem.inf. Maybe try checking "only connect at this speed".

Author Comment

ID: 1564438
this wanders into the whole modem morass..

It doesn't even show up as a modem, since it was added as a RAS device in ../ras/modem.inf and not in ../inf/xxx.inf
It does (of course) sho up on the DUN entry, and if edit properties, it isset at
"initial speed 115200"; no other speed related options. All speeds in the modems.inf file are the same.

I think the system is a bit weird with the old and new modem systems.


Expert Comment

ID: 1564439
Ah, ok. Perhaps the lack of connect messages prevents the bps from being set properly.

Do I understand correctly that it's actually working at 115200 but reporting wrong? If so, probably no big deal.

You could try checking the Ports settings in Control panel, could be inheriting the 28800 from startup.


Author Comment

ID: 1564440
Yes, no big deal.

/control/Ports/settings are at 57600.

Given the mixed state of affairs with their modem stuff, I'm just glad it works.


Featured Post

Connect further...control easier

With the ATEN CE624, you can now enjoy a high-quality visual experience powered by HDBaseT technology and the convenience of a single Cat6 cable to transmit uncompressed video with zero latency and multi-streaming for dual-view applications where remote access is required.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Sometimes you might need to configure routing based not only on destination IP address, but also on a combination of destination IP address (or hostname) and destination port number. I will describe a method how to accomplish this with free tools. …
Trying to figure out group policy inheritance and which settings apply where can be a chore.  Here's a very simple summary I've written which might help.  Keep in mind, this is just a high-level conceptual overview where I try to avoid getting bogge…
Microsoft Active Directory, the widely used IT infrastructure, is known for its high risk of credential theft. The best way to test your Active Directory’s vulnerabilities to pass-the-ticket, pass-the-hash, privilege escalation, and malware attacks …

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question