svn commit: r44819 - head/en_US.ISO8859-1/books/faq
Dru Lavigne
dru at FreeBSD.org
Tue May 13 15:39:11 UTC 2014
Author: dru
Date: Tue May 13 15:39:11 2014
New Revision: 44819
URL: http://svnweb.freebsd.org/changeset/doc/44819
Log:
White space fix only. Translators can ignore.
Sponsored by: iXsystems
Modified:
head/en_US.ISO8859-1/books/faq/book.xml
Modified: head/en_US.ISO8859-1/books/faq/book.xml
==============================================================================
--- head/en_US.ISO8859-1/books/faq/book.xml Tue May 13 03:34:52 2014 (r44818)
+++ head/en_US.ISO8859-1/books/faq/book.xml Tue May 13 15:39:11 2014 (r44819)
@@ -6141,8 +6141,8 @@ Key F15 A A Menu Wo
<para>This command may be typed at the &man.ppp.8; command
prompt or it may be entered in the
<filename>/etc/ppp/ppp.conf</filename> configuration file
- (the start of the <literal>default</literal> section is the
- best place to put it). Make sure that
+ (the start of the <literal>default</literal> section is
+ the best place to put it). Make sure that
<filename>/etc/syslog.conf</filename> (see
&man.syslog.conf.5;) contains the lines below and the file
<filename>/var/log/ppp.log</filename> exists:</para>
@@ -6500,11 +6500,11 @@ deny pred1 deflate deflate24 protocomp a
<programlisting>set openmode active 3</programlisting>
- <para>This tells &man.ppp.8; to be passive for 3 seconds, and
- then to start sending LCP requests. If the peer starts
- sending requests during this period, &man.ppp.8; will
- immediately respond rather than waiting for the full 3
- second period.</para>
+ <para>This tells &man.ppp.8; to be passive for 3 seconds,
+ and then to start sending LCP requests. If the peer
+ starts sending requests during this period, &man.ppp.8;
+ will immediately respond rather than waiting for the full
+ 3 second period.</para>
</answer>
</qandaentry>
@@ -6516,38 +6516,44 @@ deny pred1 deflate deflate24 protocomp a
<answer>
<para>There is currently an implementation mis-feature in
- &man.ppp.8; where it does not associate LCP, CCP & IPCP
- responses with their original requests. As a result, if one
- PPP implementation is more than 6 seconds slower than the
- other side, the other side will send two additional LCP
- configuration requests. This is fatal.</para>
-
- <para>Consider two implementations, <systemitem>A</systemitem> and
- <systemitem>B</systemitem>. <systemitem>A</systemitem> starts sending LCP
- requests immediately after connecting and <systemitem>B</systemitem>
- takes 7 seconds to start. When <systemitem>B</systemitem> starts,
- <systemitem>A</systemitem> has sent 3 LCP REQs. We are assuming the
- line has ECHO switched off, otherwise we would see magic
- number problems as described in the previous section.
- <systemitem>B</systemitem> sends a REQ, then an ACK to the first of
- <systemitem>A</systemitem>'s REQs. This results in
- <systemitem>A</systemitem> entering the <acronym>OPENED</acronym>
- state and sending and ACK (the first) back to
- <systemitem>B</systemitem>. In the meantime, <systemitem>B</systemitem>
- sends back two more ACKs in response to the two additional
- REQs sent by <systemitem>A</systemitem> before <systemitem>B</systemitem>
- started up. <systemitem>B</systemitem> then receives the first ACK
+ &man.ppp.8; where it does not associate LCP, CCP &
+ IPCP responses with their original requests. As a result,
+ if one PPP implementation is more than 6 seconds slower
+ than the other side, the other side will send two
+ additional LCP configuration requests. This is
+ fatal.</para>
+
+ <para>Consider two implementations,
+ <systemitem>A</systemitem> and <systemitem>B</systemitem>.
+ <systemitem>A</systemitem> starts sending LCP requests
+ immediately after connecting and
+ <systemitem>B</systemitem> takes 7 seconds to start. When
+ <systemitem>B</systemitem> starts,
+ <systemitem>A</systemitem> has sent 3 LCP REQs. We are
+ assuming the line has ECHO switched off, otherwise we
+ would see magic number problems as described in the
+ previous section. <systemitem>B</systemitem> sends a REQ,
+ then an ACK to the first of <systemitem>A</systemitem>'s
+ REQs. This results in <systemitem>A</systemitem> entering
+ the <acronym>OPENED</acronym> state and sending and ACK
+ (the first) back to <systemitem>B</systemitem>. In the
+ meantime, <systemitem>B</systemitem> sends back two more
+ ACKs in response to the two additional REQs sent by
+ <systemitem>A</systemitem> before
+ <systemitem>B</systemitem> started up.
+ <systemitem>B</systemitem> then receives the first ACK
from <systemitem>A</systemitem> and enters the
- <acronym>OPENED</acronym> state. <systemitem>A</systemitem>
- receives the second ACK from <systemitem>B</systemitem> and goes
- back to the <acronym>REQ-SENT</acronym> state, sending
- another (forth) REQ as per the RFC. It then receives the
- third ACK and enters the <acronym>OPENED</acronym> state.
- In the meantime, <systemitem>B</systemitem> receives the forth REQ
- from <systemitem>A</systemitem>, resulting in it reverting to the
- <acronym>ACK-SENT</acronym> state and sending another
- (second) REQ and (forth) ACK as per the RFC.
- <systemitem>A</systemitem> gets the REQ, goes into
+ <acronym>OPENED</acronym> state.
+ <systemitem>A</systemitem> receives the second ACK from
+ <systemitem>B</systemitem> and goes back to the
+ <acronym>REQ-SENT</acronym> state, sending another (forth)
+ REQ as per the RFC. It then receives the third ACK and
+ enters the <acronym>OPENED</acronym> state. In the
+ meantime, <systemitem>B</systemitem> receives the forth
+ REQ from <systemitem>A</systemitem>, resulting in it
+ reverting to the <acronym>ACK-SENT</acronym> state and
+ sending another (second) REQ and (forth) ACK as per the
+ RFC. <systemitem>A</systemitem> gets the REQ, goes into
<acronym>REQ-SENT</acronym> and sends another REQ. It
immediately receives the following ACK and enters
<acronym>OPENED</acronym>.</para>
@@ -6556,15 +6562,16 @@ deny pred1 deflate deflate24 protocomp a
getting nowhere and gives up.</para>
<para>The best way to avoid this is to configure one side to
- be <literal>passive</literal> — that is, make one side
- wait for the other to start negotiating. This can be done
- with the following command:</para>
+ be <literal>passive</literal> — that is, make one
+ side wait for the other to start negotiating. This can be
+ done with the following command:</para>
<programlisting>set openmode passive</programlisting>
- <para>Care should be taken with this option. You should also
- use this command to limit the amount of time that
- &man.ppp.8; waits for the peer to begin negotiations:</para>
+ <para>Care should be taken with this option. You should
+ also use this command to limit the amount of time that
+ &man.ppp.8; waits for the peer to begin
+ negotiations:</para>
<programlisting>set stopped <replaceable>N</replaceable></programlisting>
@@ -6596,8 +6603,8 @@ deny pred1 deflate deflate24 protocomp a
waiting for the command to complete.</para>
<para>To execute commands like this, use
- <command>!bg</command> instead. This will execute
- the given command in the background, and &man.ppp.8; can
+ <command>!bg</command> instead. This will execute the
+ given command in the background, and &man.ppp.8; can
continue to service the link.</para>
</answer>
</qandaentry>
@@ -6639,14 +6646,15 @@ deny pred1 deflate deflate24 protocomp a
<para>This will log all traffic through the connection. The
next time the line comes up unexpectedly, you will see the
- reason logged with a convenient timestamp next to it.</para>
+ reason logged with a convenient timestamp next to
+ it.</para>
<para>You can now disable dialing under these circumstances.
- Usually, this sort of problem arises due to DNS lookups. To
- prevent DNS lookups from establishing a connection (this
- will <emphasis>not</emphasis> prevent &man.ppp.8; from
- passing the packets through an established connection), use
- the following:</para>
+ Usually, this sort of problem arises due to DNS lookups.
+ To prevent DNS lookups from establishing a connection
+ (this will <emphasis>not</emphasis> prevent &man.ppp.8;
+ from passing the packets through an established
+ connection), use the following:</para>
<programlisting>set dfilter 1 deny udp src eq 53
set dfilter 2 deny udp dst eq 53
@@ -6658,21 +6666,23 @@ set dfilter 3 permit 0/0 0/0</programlis
related things.</para>
<para>In the DNS case, you should try to determine what is
- actually trying to resolve a host name. A lot of the time,
- &man.sendmail.8; is the culprit. You should make sure that
- you tell <application>sendmail</application> not to do any
- DNS lookups in its configuration file. See the section on
- <link xlink:href="&url.books.handbook;/smtp-dialup.html">using email with a dialup connection</link>
- in the &os; Handbook for details on how to create your own
- configuration file and what should go into it. You may also
- want to add the following line to
+ actually trying to resolve a host name. A lot of the
+ time, &man.sendmail.8; is the culprit. You should make
+ sure that you tell <application>sendmail</application> not
+ to do any DNS lookups in its configuration file. See the
+ section on <link
+ xlink:href="&url.books.handbook;/smtp-dialup.html">using
+ email with a dialup connection</link> in the &os;
+ Handbook for details on how to create your own
+ configuration file and what should go into it. You may
+ also want to add the following line to
<filename>.mc</filename>:</para>
<programlisting>define(`confDELIVERY_MODE', `d')dnl</programlisting>
- <para>This will make <application>sendmail</application> queue
- everything until the queue is run (usually, sendmail is
- run with <option>-bd -q30m</option>, telling it to run
+ <para>This will make <application>sendmail</application>
+ queue everything until the queue is run (usually, sendmail
+ is run with <option>-bd -q30m</option>, telling it to run
the queue every 30 minutes) or until a <command>sendmail
-q</command> is done (perhaps from your
<filename>ppp.linkup</filename>).</para>
@@ -6703,7 +6713,8 @@ CCP: Received Terminate Ack (1) state =
<qandaentry>
<question xml:id="ppp-connectionspeed">
- <para>Why does &man.ppp.8; not log my connection speed?</para>
+ <para>Why does &man.ppp.8; not log my connection
+ speed?</para>
</question>
<answer>
@@ -6716,13 +6727,13 @@ CCP: Received Terminate Ack (1) state =
<para>This will make &man.ppp.8; log everything up until the
last requested <quote>expect</quote> string.</para>
- <para>If you wish to see your connect speed and are using PAP
- or CHAP (and therefore do not have anything to
+ <para>If you wish to see your connect speed and are using
+ PAP or CHAP (and therefore do not have anything to
<quote>chat</quote> after the CONNECT in the dial script
— no <literal>set login</literal> script), you must
make sure that you instruct &man.ppp.8; to
- <quote>expect</quote> the whole CONNECT line, something like
- this:</para>
+ <quote>expect</quote> the whole CONNECT line, something
+ like this:</para>
<programlisting>set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 4 \
\"\" ATZ OK-ATZ-OK ATDT\\T TIMEOUT 60 CONNECT \\c \\n"</programlisting>
@@ -6742,18 +6753,18 @@ CCP: Received Terminate Ack (1) state =
<answer>
<para>The <application>ppp</application> utility parses each
line in your config files so that it can interpret strings
- such as <literal>set phone "123 456 789"</literal> correctly
- and realize that the number is actually only
+ such as <literal>set phone "123 456 789"</literal>
+ correctly and realize that the number is actually only
<emphasis>one</emphasis> argument. To specify a
<literal>"</literal> character, you must escape it
using a backslash (<literal>\</literal>).</para>
<para>When the chat interpreter parses each argument, it
- re-interprets the argument to find any special
- escape sequences such as <literal>\P</literal> or
- <literal>\T</literal> (see the manual page). As a result of
- this double-parsing, you must remember to use the correct
- number of escapes.</para>
+ re-interprets the argument to find any special escape
+ sequences such as <literal>\P</literal> or
+ <literal>\T</literal> (see the manual page). As a result
+ of this double-parsing, you must remember to use the
+ correct number of escapes.</para>
<para>If you wish to actually send a <literal>\</literal>
character to (say) your modem, you would need something
@@ -6789,17 +6800,18 @@ ATDT1234567</programlisting>
</question>
<answer>
- <para>The <application>ppp</application> utility (or any other
- program for that matter) should never dump core. Because
- &man.ppp.8; runs setuid (with an effective user ID of
- <literal>0</literal>), the operating system will not write
- core image of &man.ppp.8; to disk before terminating it.
- If, however &man.ppp.8; is actually terminating due to a
- segmentation violation or some other signal that normally
- causes core to be dumped, <emphasis>and</emphasis> you are
- sure you are using the latest version (see the start of this
- section), then you should install the system sources and do
- the following:</para>
+ <para>The <application>ppp</application> utility (or any
+ other program for that matter) should never dump core.
+ Because &man.ppp.8; runs setuid (with an effective
+ user ID of <literal>0</literal>), the operating
+ system will not write core image of &man.ppp.8; to disk
+ before terminating it. If, however &man.ppp.8; is
+ actually terminating due to a segmentation violation or
+ some other signal that normally causes core to be dumped,
+ <emphasis>and</emphasis> you are sure you are using the
+ latest version (see the start of this section), then you
+ should install the system sources and do the
+ following:</para>
<screen>&prompt.root; <userinput>cd /usr/src/usr.sbin/ppp</userinput>
&prompt.root; <userinput>echo STRIP= >> /etc/make.conf</userinput>
@@ -6807,10 +6819,11 @@ ATDT1234567</programlisting>
&prompt.root; <userinput>make install clean</userinput></screen>
<para>You will now have a debuggable version of &man.ppp.8;
- installed. You will have to be <systemitem class="username">root</systemitem> to
- run &man.ppp.8; as all of its privileges have been revoked.
- When you start &man.ppp.8;, take a careful note of what your
- current directory was at the time.</para>
+ installed. You will have to be <systemitem
+ class="username">root</systemitem> to run &man.ppp.8; as
+ all of its privileges have been revoked. When you start
+ &man.ppp.8;, take a careful note of what your current
+ directory was at the time.</para>
<para>Now, if and when &man.ppp.8; receives the segmentation
violation, it will dump a core file called
@@ -6829,12 +6842,13 @@ ATDT1234567</programlisting>
.....</screen>
<para>All of this information should be given alongside your
- question, making it possible to diagnose the problem.</para>
+ question, making it possible to diagnose the
+ problem.</para>
<para>If you are familiar with &man.gdb.1;, you may wish to
find out some other bits and pieces such as what actually
- caused the dump or the addresses and values of the relevant
- variables.</para>
+ caused the dump or the addresses and values of the
+ relevant variables.</para>
</answer>
</qandaentry>
@@ -6847,61 +6861,64 @@ ATDT1234567</programlisting>
<answer>
<para>This was a known problem with &man.ppp.8; set up to
negotiate a dynamic local IP number with the peer in
- <option>-auto</option> mode. It has been fixed a long time
- ago — search the manual page for
+ <option>-auto</option> mode. It has been fixed a long
+ time ago — search the manual page for
<literal>iface</literal>.</para>
<para>The problem was that when that initial program calls
- &man.connect.2;, the IP number of the &man.tun.4; interface
- is assigned to the socket endpoint. The kernel creates the
- first outgoing packet and writes it to the &man.tun.4;
- device. &man.ppp.8; then reads the packet and establishes a
- connection. If, as a result of &man.ppp.8;'s dynamic IP
- assignment, the interface address is changed, the original
- socket endpoint will be invalid. Any subsequent packets
- sent to the peer will usually be dropped. Even if they are
- not, any responses will not route back to the originating
- machine as the IP number is no longer owned by that
- machine.</para>
+ &man.connect.2;, the IP number of the &man.tun.4;
+ interface is assigned to the socket endpoint. The kernel
+ creates the first outgoing packet and writes it to the
+ &man.tun.4; device. &man.ppp.8; then reads the packet and
+ establishes a connection. If, as a result of
+ &man.ppp.8;'s dynamic IP assignment, the interface address
+ is changed, the original socket endpoint will be invalid.
+ Any subsequent packets sent to the peer will usually be
+ dropped. Even if they are not, any responses will not
+ route back to the originating machine as the IP number is
+ no longer owned by that machine.</para>
<para>There are several theoretical ways to approach this
- problem. It would be nicest if the peer would re-assign the
- same IP number if possible. The current version of
+ problem. It would be nicest if the peer would re-assign
+ the same IP number if possible. The current version of
&man.ppp.8; does this, but most other implementations do
not.</para>
<para>The easiest method from our side would be to never
change the &man.tun.4; interface IP number, but instead to
- change all outgoing packets so that the source IP number is
- changed from the interface IP to the negotiated IP on the
- fly. This is essentially what the
- <literal>iface-alias</literal> option in the latest version
- of &man.ppp.8; is doing (with the help of &man.libalias.3;
- and &man.ppp.8;'s <option>-nat</option> switch) — it
- is maintaining all previous interface addresses and NATing
- them to the last negotiated address.</para>
+ change all outgoing packets so that the source IP number
+ is changed from the interface IP to the negotiated IP on
+ the fly. This is essentially what the
+ <literal>iface-alias</literal> option in the latest
+ version of &man.ppp.8; is doing (with the help of
+ &man.libalias.3; and &man.ppp.8;'s <option>-nat</option>
+ switch) — it is maintaining all previous interface
+ addresses and NATing them to the last negotiated
+ address.</para>
<para>Another alternative (and probably the most reliable)
would be to implement a system call that changes all bound
- sockets from one IP to another. &man.ppp.8; would use this
- call to modify the sockets of all existing programs when a
- new IP number is negotiated. The same system call could be
- used by <acronym>DHCP</acronym> clients when they are forced
- to call the <function>bind()</function> function for their
- sockets.</para>
+ sockets from one IP to another. &man.ppp.8; would use
+ this call to modify the sockets of all existing programs
+ when a new IP number is negotiated. The same system call
+ could be used by <acronym>DHCP</acronym> clients when they
+ are forced to call the <function>bind()</function>
+ function for their sockets.</para>
<para>Yet another possibility is to allow an interface to be
- brought up without an IP number. Outgoing packets would be
- given an IP number of <systemitem class="ipaddress">255.255.255.255</systemitem> up until the first
- <literal>SIOCAIFADDR</literal> &man.ioctl.2; is done. This
- would result in fully binding the socket. It would be up to
- &man.ppp.8; to change the source IP number, but only if it
- is set to <systemitem class="ipaddress">255.255.255.255</systemitem>,
- and only the IP number and IP checksum would need to change.
- This, however is a bit of a hack as the kernel would be
- sending bad packets to an improperly configured interface,
- on the assumption that some other mechanism is capable of
- fixing things retrospectively.</para>
+ brought up without an IP number. Outgoing packets would
+ be given an IP number of <systemitem
+ class="ipaddress">255.255.255.255</systemitem> up until
+ the first <literal>SIOCAIFADDR</literal> &man.ioctl.2; is
+ done. This would result in fully binding the socket. It
+ would be up to &man.ppp.8; to change the source IP number,
+ but only if it is set to <systemitem
+ class="ipaddress">255.255.255.255</systemitem>, and only
+ the IP number and IP checksum would need to change. This,
+ however is a bit of a hack as the kernel would be sending
+ bad packets to an improperly configured interface, on the
+ assumption that some other mechanism is capable of fixing
+ things retrospectively.</para>
</answer>
</qandaentry>
@@ -6913,26 +6930,27 @@ ATDT1234567</programlisting>
<answer>
<para>The reason games and the like do not work when
- &man.libalias.3; is in use is that the machine on the outside
- will try to open a connection or send (unsolicited) UDP
- packets to the machine on the inside. The NAT software does
- not know that it should send these packets to the interior
- machine.</para>
+ &man.libalias.3; is in use is that the machine on the
+ outside will try to open a connection or send
+ (unsolicited) UDP packets to the machine on the inside.
+ The NAT software does not know that it should send these
+ packets to the interior machine.</para>
<para>To make things work, make sure that the only thing
running is the software that you are having problems with,
- then either run &man.tcpdump.1; on the &man.tun.4; interface
- of the gateway or enable &man.ppp.8; TCP/IP logging
- (<literal>set log +tcp/ip</literal>) on the gateway.</para>
+ then either run &man.tcpdump.1; on the &man.tun.4;
+ interface of the gateway or enable &man.ppp.8; TCP/IP
+ logging (<literal>set log +tcp/ip</literal>) on the
+ gateway.</para>
<para>When you start the offending software, you should see
- packets passing through the gateway machine. When something
- comes back from the outside, it will be dropped (that is the
- problem). Note the port number of these packets then shut
- down the offending software. Do this a few times to see if
- the port numbers are consistent. If they are, then the
- following line in the relevant section of
- <filename>/etc/ppp/ppp.conf</filename> will make the
+ packets passing through the gateway machine. When
+ something comes back from the outside, it will be dropped
+ (that is the problem). Note the port number of these
+ packets then shut down the offending software. Do this a
+ few times to see if the port numbers are consistent. If
+ they are, then the following line in the relevant section
+ of <filename>/etc/ppp/ppp.conf</filename> will make the
software functional:</para>
<programlisting>nat port <replaceable>proto</replaceable> <replaceable>internalmachine</replaceable>:<replaceable>port</replaceable> <replaceable>port</replaceable></programlisting>
@@ -6945,26 +6963,27 @@ ATDT1234567</programlisting>
number of the packets.</para>
<para>You will not be able to use the software on other
- machines without changing the above command, and running the
- software on two internal machines at the same time is out of
- the question — after all, the outside world is seeing
- your entire internal network as being just a single
- machine.</para>
+ machines without changing the above command, and running
+ the software on two internal machines at the same time is
+ out of the question — after all, the outside world
+ is seeing your entire internal network as being just a
+ single machine.</para>
- <para>If the port numbers are not consistent, there are three
- more options:</para>
+ <para>If the port numbers are not consistent, there are
+ three more options:</para>
<orderedlist>
<listitem>
<para>Submit support in &man.libalias.3;. Examples of
<quote>special cases</quote> can be found in
<filename>/usr/src/sys/netinet/libalias/alias_*.c</filename>
- (<filename>alias_ftp.c</filename> is a good prototype).
- This usually involves reading certain recognized
- outgoing packets, identifying the instruction that tells
- the outside machine to initiate a connection back to the
- internal machine on a specific (random) port and setting
- up a <quote>route</quote> in the alias table so that the
+ (<filename>alias_ftp.c</filename> is a good
+ prototype). This usually involves reading certain
+ recognized outgoing packets, identifying the
+ instruction that tells the outside machine to initiate
+ a connection back to the internal machine on a
+ specific (random) port and setting up a
+ <quote>route</quote> in the alias table so that the
subsequent packets know where to go.</para>
<para>This is the most difficult solution, but it is the
@@ -6974,8 +6993,7 @@ ATDT1234567</programlisting>
<listitem>
<para>Use a proxy. The application may support
- <literal>socks5</literal> for example, or
- may have a
+ <literal>socks5</literal> for example, or may have a
<quote>passive</quote> option that avoids ever
requesting that the peer open connections back to the
local machine.</para>
@@ -6983,8 +7001,8 @@ ATDT1234567</programlisting>
<listitem>
<para>Redirect everything to the internal machine using
- <literal>nat addr</literal>. This is the sledge-hammer
- approach.</para>
+ <literal>nat addr</literal>. This is the
+ sledge-hammer approach.</para>
</listitem>
</orderedlist>
</answer>
@@ -6996,12 +7014,12 @@ ATDT1234567</programlisting>
</question>
<answer>
- <para>FCS stands for Frame Check Sequence. Each
- PPP packet has a checksum attached to ensure that the data
- being received is the data being sent. If the FCS of an
- incoming packet is incorrect, the packet is dropped and the
- HDLC FCS count is increased. The HDLC error values can be
- displayed using the <literal>show hdlc</literal>
+ <para>FCS stands for Frame Check Sequence. Each PPP packet
+ has a checksum attached to ensure that the data being
+ received is the data being sent. If the FCS of an
+ incoming packet is incorrect, the packet is dropped and
+ the HDLC FCS count is increased. The HDLC error values
+ can be displayed using the <literal>show hdlc</literal>
command.</para>
<para>If your link is bad (or if your serial driver is
@@ -7013,27 +7031,27 @@ ATDT1234567</programlisting>
problem.</para>
<para>If your link freezes as soon as you have connected and
- you see a large number of FCS errors, this may be because your
- link is not 8-bit clean. Make sure your modem is not using
- software flow control (XON/XOFF). If your datalink
- <emphasis>must</emphasis> use software flow control, use the
- command <literal>set accmap 0x000a0000</literal> to tell
- &man.ppp.8; to escape the <literal>^Q</literal> and
+ you see a large number of FCS errors, this may be because
+ your link is not 8-bit clean. Make sure your modem is not
+ using software flow control (XON/XOFF). If your datalink
+ <emphasis>must</emphasis> use software flow control, use
+ the command <literal>set accmap 0x000a0000</literal> to
+ tell &man.ppp.8; to escape the <literal>^Q</literal> and
<literal>^S</literal> characters.</para>
<para>Another reason for seeing too many FCS errors may be
that the remote end has stopped talking
<acronym>PPP</acronym>. You may want to enable
- <literal>async</literal> logging at this point to determine
- if the incoming data is actually a login or shell prompt.
- If you have a shell prompt at the remote end, it is possible
- to terminate &man.ppp.8; without dropping the line by using
- <command>close lcp</command> (a following
- <command>term</command>) will reconnect you to the
- shell on the remote machine.</para>
+ <literal>async</literal> logging at this point to
+ determine if the incoming data is actually a login or
+ shell prompt. If you have a shell prompt at the remote
+ end, it is possible to terminate &man.ppp.8; without
+ dropping the line by using <command>close lcp</command> (a
+ following <command>term</command>) will reconnect you to
+ the shell on the remote machine.</para>
- <para>If nothing in your log file indicates why the link might
- have been terminated, you should ask the remote
+ <para>If nothing in your log file indicates why the link
+ might have been terminated, you should ask the remote
administrator (your ISP?) why the session was
terminated.</para>
</answer>
@@ -7046,13 +7064,12 @@ ATDT1234567</programlisting>
</question>
<answer>
- <para>If all else fails, send as much information as you can,
- including your config files, how you are starting
+ <para>If all else fails, send as much information as you
+ can, including your config files, how you are starting
&man.ppp.8;, the relevant parts of your log file and the
- output of <command>netstat -rn</command> (before
- and after connecting) to the &a.questions;
- and someone should point you in the right
- direction.</para>
+ output of <command>netstat -rn</command> (before and after
+ connecting) to the &a.questions; and someone should point
+ you in the right direction.</para>
</answer>
</qandaentry>
</qandaset>
@@ -7062,7 +7079,8 @@ ATDT1234567</programlisting>
<title>Serial Communications</title>
<para>This section answers common questions about serial
- communications with &os;. PPP is covered in the <link linkend="networking">Networking</link> section.</para>
+ communications with &os;. PPP is covered in the <link
+ linkend="networking">Networking</link> section.</para>
<qandaset>
<qandaentry>
@@ -7072,8 +7090,9 @@ ATDT1234567</programlisting>
</question>
<answer>
- <para>There is a list of these in the <link xlink:href="&url.books.handbook;/serial.html">Serial Communications</link>
- chapter of the handbook.</para>
+ <para>There is a list of these in the <link
+ xlink:href="&url.books.handbook;/serial.html">Serial
+ Communications</link> chapter of the handbook.</para>
<para>Most multi-port PCI cards that are based on 16550 or
clones are supported with no extra effort.</para>
@@ -7093,7 +7112,9 @@ ATDT1234567</programlisting>
</question>
<answer>
- <para>See <link xlink:href="&url.books.handbook;/serialconsole-setup.html">this section of the handbook</link>.</para>
+ <para>See <link
+ xlink:href="&url.books.handbook;/serialconsole-setup.html">this
+ section of the handbook</link>.</para>
</answer>
</qandaentry>
@@ -7106,8 +7127,8 @@ ATDT1234567</programlisting>
<answer>
<para>As the &os; kernel boots, it will probe for the serial
ports in your system for which the kernel was configured.
- You can either watch your system closely for the messages it
- prints or run this command after your system is up and
+ You can either watch your system closely for the messages
+ it prints or run this command after your system is up and
running:</para>
<screen>&prompt.user; <userinput>dmesg | grep -E "^sio[0-9]"</userinput></screen>
@@ -7121,20 +7142,23 @@ sio1: <16550A-compatible COM port>
sio1: type 16550A</programlisting>
<para>This shows two serial ports. The first is on
- IRQ 4, is using port address <literal>0x3f8</literal>,
- and has a 16550A-type UART chip. The second uses the same
- kind of chip but is on IRQ 3 and is at port address
- <literal>0x2f8</literal>. Internal modem cards are treated
- just like serial ports — except that they always have
- a modem <quote>attached</quote> to the port.</para>
-
- <para>The <filename>GENERIC</filename> kernel includes support
- for two serial ports using the same IRQ and port address
- settings in the above example. If these settings are not
- right for your system, or if you have added modem cards or
- have more serial ports than your kernel is configured for,
- just reconfigure your kernel. See section <link linkend="make-kernel">about building a kernel</link> for
- more details.</para>
+ IRQ 4, is using port address
+ <literal>0x3f8</literal>, and has a 16550A-type UART chip.
+ The second uses the same kind of chip but is on
+ IRQ 3 and is at port address
+ <literal>0x2f8</literal>. Internal modem cards are
+ treated just like serial ports — except that they
+ always have a modem <quote>attached</quote> to the
+ port.</para>
+
+ <para>The <filename>GENERIC</filename> kernel includes
+ support for two serial ports using the same IRQ and port
+ address settings in the above example. If these settings
+ are not right for your system, or if you have added modem
+ cards or have more serial ports than your kernel is
+ configured for, just reconfigure your kernel. See section
+ <link linkend="make-kernel">about building a kernel</link>
+ for more details.</para>
</answer>
</qandaentry>
@@ -7144,34 +7168,30 @@ sio1: type 16550A</programlisting>
</question>
<answer>
- <para>The third serial port, <filename>sio2</filename>
- (see &man.sio.4;, known as <filename>COM3</filename> in
- DOS), is on <filename>/dev/cuad2</filename> for dial-out
+ <para>The third serial port, <filename>sio2</filename> (see
+ &man.sio.4;, known as <filename>COM3</filename> in DOS),
+ is on <filename>/dev/cuad2</filename> for dial-out
devices, and on <filename>/dev/ttyd2</filename> for
dial-in devices. What is the difference between these two
classes of devices?</para>
- <para>You use
- <filename>ttydX</filename>
- for dial-ins. When opening
- <filename>/dev/ttydX</filename>
- in blocking mode, a process will wait for the corresponding
+ <para>You use <filename>ttydX</filename> for dial-ins. When
+ opening <filename>/dev/ttydX</filename> in blocking mode,
+ a process will wait for the corresponding
<filename>cuadX</filename>
device to become inactive, and then wait for the carrier
detect line to go active. When you open the
- <filename>cuadX</filename>
- device, it makes sure the serial port is not already in use
- by the
- <filename>ttydX</filename>
- device. If the port is available, it <quote>steals</quote>
- it from the
+ <filename>cuadX</filename> device, it makes sure the
+ serial port is not already in use by the
<filename>ttydX</filename>
- device. Also, the
- <filename>cuadX</filename>
- device does not care about carrier detect. With this scheme
- and an auto-answer modem, you can have remote users log in
- and you can still dial out with the same modem and the
- system will take care of all the conflicts.</para>
+ device. If the port is available, it
+ <quote>steals</quote> it from the
+ <filename>ttydX</filename> device. Also, the
+ <filename>cuadX</filename> device does not care about
+ carrier detect. With this scheme and an auto-answer
+ modem, you can have remote users log in and you can still
+ dial out with the same modem and the system will take care
+ of all the conflicts.</para>
</answer>
</qandaentry>
@@ -7183,13 +7203,14 @@ sio1: type 16550A</programlisting>
<answer>
<para>Again, the section on kernel configuration provides
- information about configuring your kernel. For a multiport
- serial card, place an &man.sio.4; line for each serial port
- on the card in the &man.device.hints.5; file. But place the
- IRQ specifiers on only one of the entries. All of the ports
- on the card should share one IRQ. For consistency, use the
- last serial port to specify the IRQ. Also, specify the
- following option in the kernel configuration file:</para>
+ information about configuring your kernel. For a
+ multiport serial card, place an &man.sio.4; line for each
+ serial port on the card in the &man.device.hints.5; file.
+ But place the IRQ specifiers on only one of the entries.
+ All of the ports on the card should share one IRQ. For
+ consistency, use the last serial port to specify the IRQ.
+ Also, specify the following option in the kernel
+ configuration file:</para>
<programlisting>options COM_MULTIPORT</programlisting>
@@ -7211,9 +7232,10 @@ hint.sio.7.port="0x2b8"
hint.sio.7.flags="0x701"
hint.sio.7.irq="12"</programlisting>
- <para>The flags indicate that the master port has minor number
- <literal>7</literal> (<literal>0x700</literal>), and all the
- ports share an IRQ (<literal>0x001</literal>).</para>
+ <para>The flags indicate that the master port has minor
+ number <literal>7</literal> (<literal>0x700</literal>),
+ and all the ports share an IRQ
+ (<literal>0x001</literal>).</para>
</answer>
</qandaentry>
@@ -7224,8 +7246,10 @@ hint.sio.7.irq="12"</programlisting>
</question>
<answer>
- <para>See the <link xlink:href="&url.books.handbook;/serial.html#serial-hw-config">Serial Communications</link>
- section in the &os; Handbook.</para>
+ <para>See the <link
+ xlink:href="&url.books.handbook;/serial.html#serial-hw-config">Serial
+ Communications</link> section in the &os;
+ Handbook.</para>
</answer>
</qandaentry>
@@ -7235,18 +7259,21 @@ hint.sio.7.irq="12"</programlisting>
</question>
<answer>
- <para>Please read the section about <link xlink:href="&url.books.handbook;/dialup.html">Dial-in Services</link>
- in the &os; Handbook.</para>
+ <para>Please read the section about <link
+ xlink:href="&url.books.handbook;/dialup.html">Dial-in
+ Services</link> in the &os; Handbook.</para>
</answer>
</qandaentry>
<qandaentry>
<question xml:id="dumb-terminal">
- <para>How can I connect a dumb terminal to my &os; box?</para>
+ <para>How can I connect a dumb terminal to my &os;
+ box?</para>
</question>
<answer>
- <para>You can find this information in the <link xlink:href="&url.books.handbook;/term.html">Terminals</link>
+ <para>You can find this information in the <link
+ xlink:href="&url.books.handbook;/term.html">Terminals</link>
section of the &os; Handbook.</para>
</answer>
</qandaentry>
@@ -7258,13 +7285,16 @@ hint.sio.7.irq="12"</programlisting>
</question>
<answer>
- <para>On your system, the programs &man.tip.1; and &man.cu.1;
- can only access the <filename>/var/spool/lock</filename>
- directory via user <systemitem class="username">uucp</systemitem> and group
- <systemitem class="groupname">dialer</systemitem>. You can use the group
- <systemitem class="groupname">dialer</systemitem> to control who has access to
- your modem or remote systems. Just add yourself to group
- <systemitem class="groupname">dialer</systemitem>.</para>
+ <para>On your system, the programs &man.tip.1; and
+ &man.cu.1; can only access the
+ <filename>/var/spool/lock</filename> directory via user
+ <systemitem class="username">uucp</systemitem> and group
+ <systemitem class="groupname">dialer</systemitem>. You
+ can use the group <systemitem
+ class="groupname">dialer</systemitem> to control who has
+ access to your modem or remote systems. Just add yourself
+ to group <systemitem
+ class="groupname">dialer</systemitem>.</para>
<para>Alternatively, you can let everyone on your system run
&man.tip.1; and &man.cu.1; by typing:</para>
@@ -7282,22 +7312,22 @@ hint.sio.7.irq="12"</programlisting>
<qandaset>
<qandaentry>
<question xml:id="more-swap">
- <para>&os; uses a lot of swap space even when the computer has
- free memory left. Why?</para>
+ <para>&os; uses a lot of swap space even when the computer
+ has free memory left. Why?</para>
</question>
<answer>
- <para>&os; will proactively
- move entirely idle, unused pages of main memory into swap in
- order to make more main memory available for active use.
- This heavy use of swap is balanced by using the extra free
- memory for cacheing.</para>
+ <para>&os; will proactively move entirely idle, unused pages
+ of main memory into swap in order to make more main memory
+ available for active use. This heavy use of swap is
+ balanced by using the extra free memory for
+ cacheing.</para>
<para>Note that while &os; is proactive in this regard, it
- does not arbitrarily decide to swap pages when the system is
- truly idle. Thus you will not find your system all paged
- out when you get up in the morning after leaving it idle
- overnight.</para>
+ does not arbitrarily decide to swap pages when the system
+ is truly idle. Thus you will not find your system all
+ paged out when you get up in the morning after leaving it
+ idle overnight.</para>
</answer>
</qandaentry>
@@ -7308,17 +7338,18 @@ hint.sio.7.irq="12"</programlisting>
</question>
<answer>
- <para>The simple answer is that free memory is wasted memory.
- Any memory that your programs do not actively allocate is
- used within the &os; kernel as disk cache. The values shown
- by &man.top.1; labeled as <literal>Inact</literal>,
- <literal>Cache</literal>, and <literal>Buf</literal> are all
- cached data at different aging levels. This cached data
- means the system does not have to access a slow disk again
- for data it has accessed recently, thus increasing overall
- performance. In general, a low value shown for
- <literal>Free</literal> memory in &man.top.1; is good,
- provided it is not <emphasis>very</emphasis> low.</para>
+ <para>The simple answer is that free memory is wasted
+ memory. Any memory that your programs do not actively
+ allocate is used within the &os; kernel as disk cache.
+ The values shown by &man.top.1; labeled as
+ <literal>Inact</literal>, <literal>Cache</literal>, and
+ <literal>Buf</literal> are all cached data at different
+ aging levels. This cached data means the system does not
+ have to access a slow disk again for data it has accessed
+ recently, thus increasing overall performance. In
+ general, a low value shown for <literal>Free</literal>
+ memory in &man.top.1; is good, provided it is not
+ <emphasis>very</emphasis> low.</para>
</answer>
</qandaentry>
@@ -7331,41 +7362,41 @@ hint.sio.7.irq="12"</programlisting>
<answer>
<para>Symlinks do not have permissions, and by default,
&man.chmod.1; will follow symlinks to change the
- permissions on the source file, if possible. So if you have a file,
- <filename>foo</filename>, and a symlink to that file,
- <filename>bar</filename>, then this command will always
- succeed.</para>
+ permissions on the source file, if possible. So if you
+ have a file, <filename>foo</filename>, and a symlink to
+ that file, <filename>bar</filename>, then this command
+ will always succeed.</para>
<screen>&prompt.user; <userinput>chmod g-w bar</userinput></screen>
<para>However, the permissions on <filename>bar</filename>
will not have changed.</para>
- <para>When changing modes of the file hierarchies rooted in the
- files instead of the files themselves,
- you have to use either <option>-H</option> or
- <option>-L</option> together with <option>-R</option>
- to make this work. See &man.chmod.1; and
- &man.symlink.7; for more information.</para>
+ <para>When changing modes of the file hierarchies rooted in
+ the files instead of the files themselves, you have to use
+ either <option>-H</option> or <option>-L</option> together
+ with <option>-R</option> to make this work. See
+ &man.chmod.1; and &man.symlink.7; for more
+ information.</para>
<warning>
<para><option>-R</option> does a
- <emphasis>recursive</emphasis> &man.chmod.1;. Be careful
- about specifying directories or symlinks to directories to
- &man.chmod.1;. If you want to change the permissions of a
- directory referenced by a symlink, use &man.chmod.1;
- without any options and follow the symlink with a trailing
- slash (<filename>/</filename>). For example, if
- <filename>foo</filename> is a symlink to directory
- <filename>bar</filename>, and you want to change the
- permissions of <filename>foo</filename> (actually
- <filename>bar</filename>), you would do something
- like:</para>
+ <emphasis>recursive</emphasis> &man.chmod.1;. Be
+ careful about specifying directories or symlinks to
+ directories to &man.chmod.1;. If you want to change the
+ permissions of a directory referenced by a symlink, use
+ &man.chmod.1; without any options and follow the symlink
+ with a trailing slash (<filename>/</filename>). For
+ example, if <filename>foo</filename> is a symlink to
+ directory <filename>bar</filename>, and you want to
+ change the permissions of <filename>foo</filename>
+ (actually <filename>bar</filename>), you would do
+ something like:</para>
<screen>&prompt.user; <userinput>chmod 555 foo/</userinput></screen>
- <para>With the trailing slash, &man.chmod.1; will follow the
- symlink, <filename>foo</filename>, to change the
+ <para>With the trailing slash, &man.chmod.1; will follow
+ the symlink, <filename>foo</filename>, to change the
permissions of the directory,
<filename>bar</filename>.</para>
</warning>
@@ -7378,19 +7409,20 @@ hint.sio.7.irq="12"</programlisting>
</question>
<answer>
- <para>Yes, you can use <package>emulators/doscmd</package>, a DOS
- emulation program, available in the &os; Ports
+ <para>Yes, you can use <package>emulators/doscmd</package>,
+ a DOS emulation program, available in the &os; Ports
Collection.</para>
<para>If <application>doscmd</application> will not suffice,
- the add-on utility <package>emulators/pcemu</package> emulates an 8088
- and enough BIOS services to run many DOS text mode
- applications. It requires the X Window System.</para>
-
- <para>You may also try <package>emulators/dosbox</package> from the &os;
- Ports Collection. The main focus of this application is
- emulating old DOS games using the local file system for
- files.</para>
+ the add-on utility <package>emulators/pcemu</package>
+ emulates an 8088 and enough BIOS services to run many DOS
+ text mode applications. It requires the X Window
+ System.</para>
+
+ <para>You may also try <package>emulators/dosbox</package>
+ from the &os; Ports Collection. The main focus of this
+ application is emulating old DOS games using the local
+ file system for files.</para>
</answer>
</qandaentry>
@@ -7401,29 +7433,34 @@ hint.sio.7.irq="12"</programlisting>
</question>
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-doc-head
mailing list