home *** CD-ROM | disk | FTP | other *** search
/ Power Hacker 2003 / Power_Hacker_2003.iso / E-zine / Magazines / napalm / napalm-5.txt < prev    next >
Encoding:
Text File  |  2002-05-27  |  44.7 KB  |  1,084 lines

  1.            /\  /^/_ _ __  __ _|^|_ __ ___
  2.           /  \/ / _` '_ \/ _` | | '_ ` _ \
  3.          / /\  / (_| |_)  (_| | | | | | | |
  4.         /_/  \/ \__, .__/\__,_|_|_| |_| |_|
  5.                    |_|
  6.  
  7.  
  8. Issue 5 (May 16, 2000)
  9. ___________________________________________________________________________
  10. The gh0st.net project:                      http://www.gh0st.net/index.html
  11. FireSt0rm homepage:                     http://www.firest0rm.org/index.html
  12. URL of the day:                    http://www.cs.wisc.edu/condor/index.html
  13. All content copyright ⌐ 2000 by the individual authors, All Rights Reserved
  14. ___________________________________________________________________________
  15.  
  16. - Editor's Comments
  17. - URLs
  18. - Readers' Questions
  19. - Readers' Comments
  20. - Contemporary Telenet I
  21. - Ethernet - The Bottom Two Layers
  22. - Music Reviews
  23. - Future Issues
  24. - Credits
  25.  
  26. ***********************************************************************
  27.       *** Editor's Comments : Kynik
  28. ***********************************************************************
  29.  
  30. I'm glad to see that some readers are actually submitting questions and
  31. comments. If you send us something, and it's coherent and topical, we'll
  32. probably include it in the next issue. If we can't answer a question you
  33. have, it's pretty likely that someone reading out there will be able to
  34. point you in the right direction. I've also increased the number of songs
  35. that are reviewed to 2, just because it looks more competitive that way,
  36. and you're not bored with a single choice. We got very lucky on the last
  37. issue, as we were posted on HNN on a Friday (which means we'd have
  38. exposure for the whole weekend) and the L0pht (pronounced /loft/ dammit!)
  39. guys didn't do any updates on it until Wednesday. Ok, so I'm easily
  40. amused. We're still looking for interesting articles on damn near
  41. everything, so if you'd like to help us out and get read by a thousand or
  42. so people, this is how you can do it pretty easily. Also, if you submit
  43. something to us, and you'd like to remain anonymous, just indicate this in
  44. your email and we won't include your name or address or both. I'd also
  45. like to give thanks to my co-editor ajax, who's been very helpful in
  46. proofreading and reformatting awkward parts, as well as doing commentary.
  47.  
  48. [ /me blushes.  Heh, I remember way back when an old associate first
  49.   showed me the l0pht homepage.  He insisted on calling it "low-fat".
  50.   I dunno where that extra vowel came from.  Did we mention being easily
  51.   amused? {ajax} ]
  52.  
  53. ***********************************************************************
  54.       *** Random good URLs : Kynik
  55. ***********************************************************************
  56.  
  57. The Open Server Architecture Project: The Win32 solution for Apache
  58. http://www.opensa.com/
  59.  
  60. Lance Spitzner's "Passive Fingerprinting" article
  61. http://www.enteract.com/~lspitz/finger.html
  62.  
  63. A 'handmade' crypto challenge
  64. http://www.jdueck.org/challenge.html
  65.  
  66. Keep an eye on security incidents, maybe report your own
  67. http://www.sans.org/giac.htm
  68.  
  69. An interesting article about cyborgs
  70. http://home.fuse.net/mllwyd/cyborgs.html
  71.  
  72. ***********************************************************************
  73.       *** Readers' Questions
  74. ***********************************************************************
  75.  
  76. Lockdown <llh@student-net.co.uk> wrote:
  77.  
  78. I'd like to find out more about you ghost net project..is it a vpn, or what?
  79. I've also got a few crap articles I could give ya.
  80.  
  81. Cheers,
  82. Lee 'Lockdown' Hughes
  83.  
  84. [ Well, technically, it's not 'my' gh0st.net project. It's something I
  85.   stumbled into, and am starting to get more involved in. The gh0st.net
  86.   URL is posted at the top of every issue so far, and the most complete
  87.   information is there. If you have specific questions, you can send them
  88.   to phatal@gh0st.net - he's the guy running the show and cracking the
  89.   whip. And as for 'crap articles' - no thanks. The world has enough noise
  90.   already. Quality articles are acceptable though. {kynik} ]
  91.  
  92. [ And just to pre-answer some questions: gh0st.net is primarily about
  93.   security research.  This is a pretty wide spec, and more than a few
  94.   things would be considered "in the scope".  Among them might be code
  95.   auditing, VPN setups, capture-the-flag games... basically, if in doing
  96.   it, we learn a concept about security that we can apply, it counts.
  97.   Current projects in the pipeline include setting up various VPN
  98.   implementations (possibly using IPv6), the various open boxes (tulkas,
  99.   english) that are up for intrusion attempts, probably some others I'm
  100.   forgetting.  Of course, we all have lives too (well, *I* don't, but
  101.   everyone else claims to), so progress may seem a little slow at times;
  102.   in fact, I partly wrote this whole description to save phatal from a
  103.   deluge of email about it - we'd all rather be doing than talking anyway.
  104.   Not An Official Gh0st Net Statement, but probably close.  {ajax} ]
  105.  
  106. -----------------------------------------------------------------------
  107.  
  108. Jason Holt <jason@community.net> wrote:
  109.  
  110.   Your just intonation article was *great*. It's by far the clearest
  111. article I've ever read on the mathematics and actualities of music.  I
  112. wondered about it for years, and finally worked out the x*2^(n/12) formula
  113. on my own - then this article filled in all the gaps.
  114.  
  115.   One thing I'm still wondering, though. I've heard that baroque 
  116. instruments were tuned slightly differently than they are today.
  117. Something about even tempering vs. some other kind of tempering.  Any
  118. idea why that was, or what the differences were?
  119.  
  120. Thanks for a great article.
  121.  
  122. [ Baroque instruments were tuned to just scales.  That's why a lot of
  123.   pieces written before the piano and harpsichord were in one key; or,
  124.   some say, when they modulated, they still sounded like they were in the
  125.   old key, lending a different tone to the piece.  Hope this answers your
  126.   question. {ajax} ]
  127.  
  128. ***********************************************************************
  129.       *** Readers' Comments
  130. ***********************************************************************
  131.  
  132. NIBLE <n1bl3@yahoo.com> wrote:
  133.  
  134. The article on AI Security has good points in preventing some of the root
  135. problems on system security. One alteration that we could make to improve
  136. performance of inspection would be to assign one host as the trusted
  137. inspecting station where all new patches for a domain/cluster would be  
  138. inspected and tested before installed on other internal systems. This
  139. method will accomplish the following:
  140.  
  141. a) Isolate performance degradation of inspecting updates on one host
  142.    versus all participating hosts.
  143.  
  144. b) Detect possible malicious code prior to installing on all machines
  145.    thus allowing early isolation.
  146.  
  147. c) Provide a single point for maintaining new methods of inspection versus
  148.    updating all participating hosts.
  149.  
  150. Although the argument of "How much can you trust this one host?" can be
  151. raised, there are some answers.
  152.  
  153. The primary assumption was that the distribution host was trusted.
  154.  
  155. Another approach would be to set up two hosts that both receive the
  156. updates, verifying the updates between them for possible infection upon
  157. transition, and after all checks have been completed designate one host
  158. to be the primary distributor and the other the backup, thus resolving
  159. redundancy as well. :-)
  160.  
  161. Regards
  162. D' n1bl3 (nible)  
  163.  
  164. [ Thanks for your input. Soon I'll be releasing AI security II--don't miss
  165.   it! A traffic monitor daemon using a backprop neural net is currently in
  166.   the works. I think it'll be interesting to see if I can train and
  167.   release a set-weight neural network that's effective in detecting
  168.   probing and intrusion attempts. I'm confident that article will raise
  169.   from eyebrows. {Blakboot} ]
  170.  
  171.  
  172. ***********************************************************************
  173.       *** Contemporary Telenet I : blakboot
  174. ***********************************************************************
  175.  
  176. Introduction
  177. -------------
  178.  
  179.   Security awareness and exploitation is a fast game on the Internet.
  180. Staying on top, whether it be for intrusion or consultation, requires
  181. onerous research; research that never ends. Before I came into this
  182. scene, most of my experience came from esoteric networks, BBSing,
  183. wardialing spoils, et cetera. Regardless, nothing has sharpened my
  184. knowledge and awareness of computer systems more than this vast network
  185. of hustle and bustle. If we could look back in in time, what wonders;
  186. what system vulnerabilities would we laugh about?  If we could step back
  187. in time a bit, what things could we get into?  What industries never
  188. quite caught up with the future, and what would their ignorance allow us
  189. to plunder?
  190.  
  191.   Please excuse me, I have left out a lot of information for sake of time 
  192. (our favorite editor wants results), and file size. There will be an
  193. article forthcoming that will cover much more on contemporary usage. This
  194. is a primer. 
  195.  
  196. [ Yeah, working under a pseudo-deadline sucks, eh? Turns out that we're
  197.   already over my target per-issue size even without this article, but
  198.   that's ok. I'm confident that this is quality. {kynik} ]
  199.  
  200. Enter Telenet
  201. -------------
  202.  
  203.   Telenet, commercially known as Sprintnet, but forever referred to as
  204. otherwise, is an X.25 network. Dialups nationwide are still active, and
  205. systems still lie sparsely about it. Herein I have provided a working scan
  206. script, and some of the spoils from that. 
  207.  
  208.  
  209. - What systems can you find on Telenet?                                     
  210.  
  211.   This isn't a definitive list by far, but what I've been: VMS, Primenet, 
  212. assorted unix clones, Lantronix type deals, arbitrary systems/databases.
  213.  
  214. - How do you get on Telenet?
  215.  
  216.   Anyone with  basic telecommunications knowledge doesn't have to read
  217. this. First, get a terminal emulator. These programs allow you to receive 
  218. relatively protocol-free data. It's nothing like your damned PPP/SLIP 
  219. connection; raw data (with the exception of emulation) is displayed from
  220. the remote computer. I suggest Telemate, Telix; anything but 
  221. hyperterminal.
  222.  
  223.   For the connection to be possible and coherent, set your baud rate to
  224. 1200bps (some dialups support 14.4) and data bits to 7. Most connections 
  225. to remote computers are 8 bits, although X.25 networks are an exception. 
  226. You should know that the possible combination of 8 bits is 256; it means
  227. that on an 8 bit connection, we can take advantage of 256 characters.
  228. Telenet can only send and receive data consisting of one of the 127
  229. bytes, combinations of 7 bits.  
  230.  
  231. [ Correct me if I'm wrong here, but won't most modern modems auto-set
  232.   their baud rate depending on how the dialup handshakes? {kynik} ]
  233.  
  234. [ We'd like to think so. Some old modems don't like to talk to newer ones
  235.   though.  Backwards combatibility.  And besides, it can't hurt. {ajax} ]
  236.  
  237. With that said, know that if you want to transfer binary files over 
  238. Telenet, you have to use the kermit protocol, because zmodem, ymodem,
  239. xmodem, etc. are 8 bit protocols. Kermit is a slow bastard and time has
  240. blessed us with its death in modern file transfers. My suggestion for
  241. transfering files over a 7 bit connection is to use uuencoding (unix to
  242. unix encoding). This will break down those extended ascii characters
  243. into plaintext, and then all you have to do is uudecode on the remote
  244. system.
  245.  
  246.   Once you've configured your terminal program with the two
  247. specifications above, it's time to connect to Telenet. The toll free
  248. Telenet dialup is 1-800-546-2000.
  249.  
  250. [ When dialed from some area codes, you may receive a message saying "You
  251.   have entered a number that can not be reached within your calling area."
  252.   then a unique number code, in my case "47530" I don't exactly know what
  253.   the numbers there stand for, but it is interesting that it looks quite
  254.   like a zip code :-/ {Reverse Corruption} ]
  255.  
  256.   Once you've connected, press enter two times; it will ask you for what
  257. type of terminal to use. Just type in D1, vt100, whatever. From here, 
  258. you've a @ prompt. To get your local dialup, type "mail". It'll enter a 
  259. login procedure. Use the login/password: phones/phones; this will execute
  260. a script which allows you to list all local dialups. 
  261.         
  262. - Connecting to computers
  263.  
  264.   This is easy, and the article shouldn't cover it, although I'm going 
  265. to get past it, and open up into more dynamic aspects of the network in 
  266. Contemporary Telenet II.
  267.  
  268.   From the @ prompt, you can connect to systems hosted by sprintnet, 
  269. and other X.25 networks. To connect to a system on the current network,
  270. just type the NUA (Network User Address); if you want to connect to a
  271. computer on another network, you'll have to provide a DNIC. (Data Network
  272. Idenification Code). An NUA consists of two things. An NPA (area code)
  273. and an address, which can be any floating point number greater than 1
  274. (there's a limit - that i do not know). Decimal places of an NUA usually
  275. indicate something similar to ports in TCP/IP.
  276.  
  277.   So, if I wanted to connect to a system in Tallahassee, FL. An example
  278. session would be something like:
  279.  
  280. @ c 90423
  281.  
  282. 904 23 CONNECTED
  283.  
  284. Username:
  285.  
  286.   To disconnect from the system or interrupt a pending connection, press
  287. @ followed by a carriage return; complete the disconnect by typing D from
  288. your pad.
  289.  
  290.   Now, if you wanted to connect to a system on Tymnet (another X.25
  291. network), you would type an NUA something like:
  292.  
  293. @ c 0310690423
  294.  
  295. Where 03106 is your DNIC, 904 the area code, 23 the address. Easy pie.
  296.  
  297.  
  298.   Here's the NUA scanner script. It's for Telemate (IMO, one of the best 
  299. emulators), and you need TMS.EXE, the script compiler. I also highly 
  300. recommend this scripting language; I learned it in under 30min and it's 
  301. quite useful, taking the hassle out of communication routines. 
  302.  
  303.   The scanner works well on my dialup, though I suspect the different 
  304. nodes sometimes will act strangely; causing the scanner to get off beat.
  305. That's just speculation though; I believe I'd gotten all the bugs out.
  306. it's sensitive and will reconnect to telenet with the smallest signs of
  307. what it suspects as a frozen node; and so, sometimes it disconnects
  308. unnecessarily. Please excuse that. Otherwise, it's sleek and records
  309. connections better than the old NUA Attacker program by Docter Dissector,
  310. which was good, but somewhere along the line Telenet return messages may
  311. have changed, causing NUAA to record unwanted connection attempts. If I
  312. remember correctly, it would record network congestion (which you will
  313. get frequently these days).
  314.  
  315. ; NUA SCANNER v1.0 : TMscript 
  316. ; Compiled & tested w/ Telemate v4.20
  317. ; Blakboot [FS] '00
  318. ; BUG: 
  319. ;       Only in applied scan mode, it doesn't increment the NUA 
  320. ;       when the pad freezes on a pending connection.
  321.  
  322. integer nua,dialtelenet,t1,t2,cw,npa,max,pending,float,c,aspm,odata,obaud
  323. string telenet,past,present,tmp1,tmp2,filename,i
  324.  
  325. ; ---- configuration ----
  326. filename = "C:\TERMINAL\SCAN\N.TXT"; Full path
  327. telenet = "1-800-546-2000"         ; You can add any prefixes you want
  328. npa = 305                          ; Area code and
  329. nua = 22                           ; NUA to scan
  330. max = 1000                         ; NUA to stop at
  331. cw = 10                            ; Time in seconds to wait for connect
  332. aspm = 0                           ; Applied Scan Mode [1/0]
  333. ;-------------------------
  334.  
  335. procedure esc
  336. inputch i
  337. if success
  338.     if i="^[" 
  339.         print "^M^MTerminating scan."                                
  340.         close
  341.         put "@"                          
  342.         put "hang"
  343.         hangup                                                                
  344.         set baud,obaud
  345.         set data,odata
  346.         stop
  347.         endif
  348. endif
  349. endproc
  350.  
  351.  
  352. query data,odata
  353. query baud,obaud
  354. set baud,1200
  355. set data,7
  356. put "ats11=40"
  357. delay 5
  358.  
  359. clear text
  360. print "Press escape at any time to terminate the scan."
  361. print "Opening NUA log file: ",filename
  362. append filename
  363. if not success
  364.     print "Error opening ",filename,"^MTerminating script."
  365.     stop
  366. endif       
  367.  
  368. date tmp2
  369. time past
  370. strset tmp1,"-",1,79
  371. write
  372. write "Scan session started on ",tmp2,", ",past
  373. if aspm
  374.     write "* Applied Scanning."
  375. endif
  376. write "NPA/NUA: ",npa,nua,"  -  ", npa,max
  377. write tmp1
  378.  
  379. print "Dialing Telenet..."
  380. repeat
  381.     repeat
  382.         dialtelenet=0
  383.         put "atdt",telenet
  384.         time past  
  385.         prob=0
  386.         while not connected   
  387.             esc
  388.             time present   
  389.             substr present,4,5,tmp1   
  390.             substr past,4,5,tmp2      
  391.             atoi tmp1,t1
  392.             atoi tmp2,t2                      
  393.             waitfor "busy","no carrier","voice",1
  394.             if found
  395.                 prob=1
  396.                 exit
  397.             endif
  398.             if (t1-t2)>= 2  
  399.                 prob=1
  400.                 exit        
  401.             endif              
  402.         endwhile 
  403.         if prob
  404.             print "^M^MRedialing..."
  405.             put "^M~~"
  406.         endif        
  407.     until not prob
  408.     delay 20
  409.     put "^M^MD1"
  410.     delay 20
  411.     clear com        
  412.     repeat
  413.         esc
  414.         itoa npa,tmp1
  415.         itoa nua,tmp2
  416.         concat tmp1,tmp2
  417.         clear com        
  418.         if c
  419.             concat tmp1, "."
  420.             itoa float, tmp2
  421.             concat tmp1, tmp2
  422.         endif
  423.         put tmp1
  424.         waitfor " connected","not","dis","81","00","BB","D4",cw
  425.         if not found
  426.             clear com
  427.             put "@"
  428.             waitfor "telenet","@",5
  429.             if not found
  430.                 dialtelenet=1
  431.                 errmsg="Node froze."
  432.                 exit
  433.             else                        
  434.                 clear com
  435.                 put "d"                                         
  436.                 waitfor "@",10
  437.                 if not found                                                      
  438.                     dialtelenet=1
  439.                     errmsg="Node froze when trying to abort."
  440.                     exit
  441.                 endif                                            
  442.             endif
  443.         else
  444.             clear com
  445.             switch found
  446.                 case 1: 
  447.                     clear com
  448.                     if c
  449.                         write "  ", 
  450.                     endif
  451.                     write tmp1
  452.                     close
  453.                     append filename                                                                 
  454.                     delay 10
  455.                     put "@"                    
  456.                     put "d"                    
  457.                     if aspm      
  458.                         if not c
  459.                             float=0
  460.                             cw=cw+10
  461.                             c=1    
  462.                         endif
  463.                     endif    
  464.                     waitfor "disconnected",5
  465.                 case 5:
  466.             endswitch                   
  467.                                                     
  468.             if not found=1         ; if not connected
  469.                 waitfor "@",5
  470.             endif
  471.             clear com
  472.        
  473.             if not found        ; found could = "@",
  474.                 dialtelenet=1
  475.                 t1=nua
  476.                 if c                   
  477.                     nua=nua+float
  478.                 endif    
  479.                 print "PENDING: ",pending,"  NUA: ",nua,"   T1: ",t1
  480.                 if pending=nua
  481.                     nua=nua+1
  482.                 else 
  483.                     pending=nua
  484.                 endif
  485.                 nua=t1
  486.                 errmsg="Node froze when pending another connection"
  487.                 exit                        
  488.             endif
  489.  
  490.             clear com
  491.         endif
  492.         if c
  493.             if float=9
  494.                 c=0
  495.                 cw=cw-10
  496.                 nua=nua+1
  497.                 float=0
  498.             else
  499.                 float=float+1
  500.             endif
  501.         else
  502.             nua=nua+1
  503.         endif
  504.     until nua>max        
  505.     print errmsg        
  506.     print "Reconnecting to Telenet..."
  507.     hangup
  508. until not dialtelenet  
  509.  
  510.  
  511. ; [SNIP--end of code] 
  512.  
  513.   Here are some scan results. No commenting 'cus I was lazy; this is
  514. basically just some spoil I'm grabbing out of my archive. These are not
  515. very old. Maybe a few months.
  516.  
  517. NPA/NUA: 30556  -  3051000
  518. -------------------------------------------------------------------------------
  519. 30559
  520.   30559.1
  521.   30559.2
  522.   30559.3
  523.   30559.4
  524.   30559.5
  525.   30559.6
  526.   30559.7
  527.   30559.8
  528.   30559.9
  529.  
  530. NPA/NUA: 7160  -  7167000
  531. -------------------------------------------------------------------------------
  532. 71623
  533.   71623.1
  534.   71623.2
  535.   71623.3
  536.   71623.4
  537.   71623.5
  538.   71623.6
  539.   71623.7
  540.   71623.8
  541.   71623.9
  542. 71625
  543.   71625.1
  544.   71625.2
  545.   71625.3
  546.   71625.4
  547.   71625.5
  548.   71625.6
  549.   71625.7
  550.   71625.8
  551.   71625.9
  552.  
  553. ***********************************************************************
  554.       *** Ethernet - The Bottom Two Layers : bobtfish
  555. ***********************************************************************
  556.  
  557.   There are lots and lots of articles about TCP/IP, how it works and how
  558. to hack it, however there is very little information (for the poor hacker
  559. who cannot afford text books) about actual ethernet itself, where it came
  560. from and how it works. I hope to go some way to correct that in this
  561. article.
  562.  
  563.   Using the OSI (Open Systems Interconnection) networking reference model
  564. ethernet takes the bottom two layers, the data link layer and the
  565. physical layer. I intend to talk about both of these layers in detail
  566. however first I will give a brief introduction to the ethernet system.
  567.  
  568. Introduction
  569. ------------
  570.  
  571.   Ethernet was invented by Xerox, DEC and Intel. It grew from a system
  572. researched ar Xerox PARC (Where such things as mice and GUIs came from)
  573. where they built a 2.94Mbps system. (Mbps = Million bits per second) This
  574. system was the son of a system called ALOHA constructed to allow radio
  575. communication between the Hawaiian Islands.
  576.  
  577. [ The great thing was, this was rounded up to 3Mbps for marketing.  Some
  578.   people objected to a roundoff error greater than the entire bandwidth
  579.   of ARPANET at the time... {ajax} ]
  580.  
  581. Ethernet is sometimes called IEEE 802.3 however this is wrong. IEEE
  582. 802.3 is *very* similar to actual ethernet except 802.3 describes a whole
  583. slew of systems running from 1-10Mbps on various media (more than
  584. ethernet) and a field in the packet header is differs between ethernet
  585. and 802.3. Now, you're thinking, there is an 802.3, but what happened to
  586. 802.1 and 802.2? Well, 802.1 is an introduction to the 802 standards and
  587. defines a set of primitives and 802.2 describes the upper part of the data
  588. link layer (which we don't give a toss about right now). Additional info
  589. ref #1
  590.  
  591.   Ok, back to ethernet then. Ethernet is a CSMA/CD protocol, which stands
  592. for Carrier Sense Multiple Access with Collision Detection. Don't worry,
  593. I didn't understand it first time either so I'll run through it bit by
  594. bit:
  595.  
  596. Carrier Sense - The system looks at the cable to see if anything is
  597.                 transmitting before it does. (So that two machines are not
  598.                 trying to send data down the same wire at the same time.)
  599.  
  600. Multiple Access - Multiple machines can access the same communication
  601.                   channel to send data. Ergo there is only one set of
  602.                   wires no matter how many machines you have.
  603.  
  604. Collision Detection - If a station is transmitting and two stations are
  605.                       waiting then when the first station stops they will
  606.                       both try to transmit at once, meaning the data will
  607.                       be garbled. Collision detection means they detect
  608.                       this and sort it out somehow. (More on this later)
  609.  
  610.   Note that Ethernet does *not* guarantee reliable delivery of the data -
  611. even if it is sent correctly without problems the receiving machine may be
  612. so loaded that it does not have spare buffers to put the data in so it may
  613. be erased.
  614.  
  615. Types of ethernet - The boring stuff.
  616. -------------------------------------
  617.  
  618.   Since Ethernet refers to the 'ether' ie the medium the signal passes
  619. through we may as well start our discussion on cables.
  620.  
  621. Name        Cable        Max segment Nodes/seg  Comments
  622. -------------------------------------------------------------------------
  623. 10Base5         Thick coax      500m        100        Old - Not used
  624. 10Base2            Thin coax       200m        30           Cheap
  625. 10BaseT            Twisted Pair    100m        1024       Standard
  626. 10BaseF            Fibre           2000m       1024       Building<>Building
  627. 100BaseTX       Twisted Pair    100m        1024       Fast
  628. 100BaseFX       Fibre           2000m       1024       Expensive
  629.  
  630. I will deal with these in order in the table.
  631.  
  632.   10base5 is the oldest (and obsolete in anywhere but the poorest 
  633. universities). It is called thick ethernet because it is yellow and 
  634. resembles a garden hose with markings every 2.5 meters. (The 802.3
  635. standard suggests the cable should be yellow but does not require it ;) )
  636. Connections are made using vampire taps in which a pin is forced 1/2 way
  637. into the core which are then connected to a transceiver. This transceiver
  638. invariably connects to the host computer using AUI which if you see it on
  639. a hub or network card look like parallel ports (D shaped connector)
  640.  
  641.   10base2 is known as thin ethernet and in contrast to 10base5 bends
  642. easily. Connections are made using BNC type connectors to form T
  643. junctions in the cable. Thin ethernet is MUCH cheaper and easier to
  644. install than 10base5 but can only run 200 meters and can handle only 30
  645. machines per segment. Both of these systems have a big problem: any bad
  646. connection, wonky BNC connector or cable break will cause the entire
  647. network to fall apart. The only reliable way to find these breaks is to
  648. pull out each cable and T-piece and replace them one by one (which means
  649. quite a long network downtime with 30 machines) or to use an expensive
  650. machine called a 'time domain reflectometer' which injects a specially
  651. shaped pulse into the cable and waits for it to echo back (the echo is
  652. caused by the fault). This allows the fault to be pin-pointed. The phreaks
  653. amongst you will know that a time domain reflectometer can also tell you
  654. if someone is tapping your phone. Well, before it gets to the exchange
  655. that is...
  656.  
  657.   These types of problems prompted the development of 10baseT which uses
  658. a different kind of wiring pattern with every machine going to a central
  659. hub which receives and re-transmits the signals to every other connected
  660. station meaning that a cable break will disable one machine, not the
  661. whole network. A large hub for many stations costs a lot of money but it
  662. means that adding or removing a station can be done without halting the
  663. network.
  664.  
  665.   Another option is 10BaseF which uses fibre optics. This is expensive
  666. due to the cost of fibre and the connectors and terminators but has
  667. excellent noise (and tempest) immunity and is the connection of choice
  668. for low speed links between buildings.
  669.  
  670. [ There are sub-standards 10BaseFB, for inter-repeater links, and
  671.   10BaseFL, for links to workstations.  As far as I can tell, this was
  672.   done simply to aggravate people.  You may also run into an older
  673.   standard called Fiber Optic Inter-Repeater Link, or FOIRL.  If so,
  674.   good luck to you. {ajax} ]
  675.  
  676.   A quick note about repeaters - 10base5, 10base2 and 10baseT all have
  677. quite small maximum segment lengths so to allow larger networks segments
  678. can be connected with repeaters. These are a physical layer device which
  679. take the signal, amplify it and send it on its way. As far as the
  680. network is concerned there is no difference (other than electronic delay
  681. introduced by the repeater) A network can contain as many segments and
  682. repeaters as required as long as no two machines are > 2.5km apart and no
  683. path between two machines has more than 4 repeaters. (Why these
  684. restrictions are present will be discussed later.)
  685.  
  686.   100baseTX is now quickly becoming the standard for new installations and
  687. is almost the same as 10baseT technically. (coax cables were dropped due
  688. to the overwhelming advantages of a hub-based design) Another good feature
  689. for the network engineer is that the same wires are used for the same
  690. thing meaning you don't need different cables. (However some poor-quality
  691. cables that work at 10Mb/s will not work at 100Mb/s.
  692.  
  693.   A coding scheme called 4B5B is used at 125MHz with 5 clock periods
  694. transmitting 4 bits of data. 100baseFX uses two strands of multimode
  695. fibre, one for each direction and has the same advantages discussed with
  696. 10baseF. This is all this paper will say about fast ethernet. Readers are
  697. referred to ref #2 if interested.
  698.  
  699. Manchester encoding - The interesting stuff
  700. -------------------------------------------
  701.  
  702.   Ethernet does not use straight binary encoding with 0 volts for 0 and 5
  703. volts for 1 as it would lead to ambiguities because stations would not be
  704. able to tell the difference between an idle sender (0 volts) and a zero
  705. bit (0 volts).
  706.  
  707.   What is needed is a system that lets receivers tell the start, middle
  708. and end of each bit with no reference to an external clock. A system
  709. called manchester encoding is used where binary 1 is sent by having the
  710. voltage high during the 1st half of the bit and low during the second. A
  711. binary 0 is sent as a low during the first 1/2 of the bit and a high
  712. during the second. This means every bit has a transition in the middle
  713. making it easier for the receiver to synchronize with the sender. The
  714. disadvantage of Manchester encoding is it requires twice as much
  715. bandwidth as straight binary encoding because the pulses are 1/2 the
  716. width. It is shown below:
  717.  
  718. Bit stream: 1 0 0 0 0 1 0 1 1 1 1
  719. Binary    : --________--__--------
  720. Manchester: -__-_-_-_--__--_-_-_-_
  721.  
  722. [ Hey bobtfish - did Manchester encoding actually come from Manchester in
  723.   the UK, or was it arbitrarily named? {kynik} ]
  724.  
  725.   The high signal in ethernet is +0.85V and the low signal is -0.85V. This
  726. gives a DC value of 0V.
  727.  
  728. The MAC sublayer protocol - The really interesting bit.
  729. -------------------------------------------------------
  730.  
  731. Bytes:
  732.     7     1      6          6    2 0-1500  0-46     4
  733. |Preamble| |Destination| Source | | Data | Pad | Checksum |
  734. |        | |  address  |address | |      |     |          |
  735.  
  736.  
  737.   Each frame starts with a preamble of 7 bytes, each containing the bit
  738. pattern 10101010. This, when manchester encoded produces a 10MHz square
  739. wave for 5.6usec to allow the receiver's clock to synchronize to the
  740. transmitter's. Next comes a start of frame byte containing 10101011. The
  741. source and destination addresses come next. The address containing all 1
  742. bits is reserved for broadcast which is delivered to all stations on the
  743. network. The minimum frame length is 64 bytes, from destination address to
  744. checksum and so if the data is less than 46 bytes then the pad field is
  745. used to pad the data to 64 bytes. This stops a station that is
  746. transmitting a short frame from completing before the first bit has
  747. reached the other end of the cable, where it may collide with another
  748. frame. (Remember we can have 2.5km of cable and 4 repeaters in there -
  749. quite a large delay).
  750.  
  751.   If a station detects a collision (by sensing more power on the cable
  752. than it is putting out) then is aborts its transmission and transmits
  753. 48bits of noise to warn all the other stations. It then waits a random
  754. amount of time before sensing the cable to try and transmit again. If the
  755. frame was too short then if a collision occurs the sender could conclude
  756. that it was successful as the noise burst does not get back before it has
  757. stopped transmitting.
  758.  
  759.   As network speed increases the minimum frame length must go up or the
  760. maximum cable length must come down. For a 1Gbps LAN the minimum frame
  761. size would be 6400bytes with a 2.5Km maximum distance. This is called the
  762. long fat pipe problem. (Which if you do any studies of high-speed
  763. communication you will come across quite often)
  764.  
  765.   The final field is called the checksum. It is a 32bit hash code of the
  766. data using a cyclic redundancy check. If some of the data is wrong then
  767. the checksum will almost certainly be wrong.
  768.  
  769. Binary Exponential Backoff (And other things with no amusing acronym)
  770. ---------------------------------------------------------------------
  771.  
  772.   We now know how ethernet stops two machines transmitting at the same
  773. time, however how does it arbitrate between them? Well since there is no
  774. designated 'master' machine, (which is why receivers have to synchronize
  775. their clock to the sender - there is no master clock), the two stations
  776. must perform this arbitration between themselves.
  777.  
  778.   After a collision stations divide time up into discrete slots of length
  779. 512 bit times, or 51.2usec.
  780.  
  781.   After the first collision, each station waits either 0 or 1 slot times
  782. before trying to transmit again. If they collide again each station picks
  783. 0, 1, 2 or 3 at random and waits that number of slot times. If a third
  784. collision occurs then the next time the number of slots to wait is chosen
  785. at random from 0 to (2^3)-1. This random time is increased exponentially
  786. until ten collisions have happened, at this point the randomization is
  787. stopped at a maximum of 1023 slots. After 16 collisions the controller
  788. gives up, goes for a beer and reports failure to transmit.
  789.  
  790. [ Ethernet beer? Sounds like an IPO! ;) {kynik} ]
  791.  
  792.   This is called binary exponential back off (and has with and without
  793. beer options ;) ) and was chosen to dynamically adapt to the number of
  794. stations trying to send. If the randomization interval was fixed at 1023
  795. the chance of 2 stations colliding a second time would be greatly reduced
  796. but the average delay would be 100s of slots. However if each station
  797. always delayed 0 or 1 slots then if 100 stations were waiting to transmit
  798. then they would collide until 99 picked 0 and 1 picked 1 or vice versa..
  799.  
  800.   By having the random time grow exponentially the system gets the lowest
  801. delay at low load but enables the collision to be resolved when lots of
  802. stations want to transmit.
  803.  
  804. Switching
  805. ---------
  806.  
  807.   As you add more stations to an Ethernet the traffic (naturally) goes up.
  808. Eventually the system will saturate (And with lots of machines waiting to
  809. send efficiency goes down the toilet). There are a number of ways to
  810. resolve this. First one could increase the speed of the LAN. (ie rip out
  811. all the 10BaseT cards and put 100BaseT cards in) however this is not
  812. necessarily practical. Another route to go is to segment groups of
  813. machines that communicate a lot onto different physical networks and use a
  814. bridge or router to connect them. The way we will look at here is a
  815. switch.
  816.  
  817.   A switch is like a hub except that it has inside it a microprocessor and
  818. a very fast internal bus. When a station sends a frame the switch checks
  819. where it is destined for and copies it across its internal bus then
  820. sends it out to the other station. If the internal bus is busy then the
  821. switch buffers the packet in internal ram and then forwards it when the
  822. bus is available. This means that (since the internal bus is many times
  823. faster than the ethernet) you can theoretically get an aggregate bandwidth
  824. of number of stations * speed of network. This is because each port forms
  825. it's own collision domain. This also gives that added advantage that
  826. full-duplex operation can be supported. (ie A station, if its ethernet
  827. card supports it, can be both transmitting and recieving a frame at the
  828. same time)
  829.  
  830.   However, if all stations on the switch are trying to contend to send to
  831. one particular station there can be problems. If one machine is a server
  832. and the rest are clients, all of which are making requests (Using all the
  833. 10Mb/s bandwidth on their port) then you have an aggregate of 120Mb/s (on
  834. a 12 port switch) which can never get through. How a switch handles this
  835. situation is manufacturer dependent.
  836.  
  837.   Nowadays a common item is a switch with one or two 100baseT ports and
  838. 10 or so 10baseT ports. This goes some way to solve the above problem as
  839. few workstations need more than 10Mb/s however a server can easily use
  840. 100Mb/s to serve it's clients.. So with 10 clients at 10Mb/s and a server
  841. at 100Mb/s then each client can get a full (and both ways) 10Mb/s of
  842. throughput. And you can happily boot over the network and run all your X
  843. applications on the remote machine at 10Mb/s. (Ok I wouldn't like to try
  844. remote Quake 3... But hey...)
  845.  
  846.   Another advantage of a switch (to a network administrator) and
  847. disadvantage (to a black-hat) is that any machine connected to the switch
  848. will only see traffic destined for that machine. That is, an ethernet
  849. sniffer will catch no more than local users accounts and passwords.
  850.  
  851. [ Not entirely true.  Most switches have a MAC (ethernet) address table
  852.   in internal memory, with possibly multiple MAC addresses associated
  853.   with a single port.  Some switches will forget MAC addresses after a
  854.   period of inactivity.  Occasionally, a host will have the MAC address
  855.   of another host in its ARP cache, but since the switch no longer knows
  856.   what port the destination host is on, it will be forced to broadcast
  857.   the packet.  Oops.  Of course, some switches are even smarter and have
  858.   their own MAC address, and can do ARP queries for machines they forget
  859.   about.  Not a major problem, but don't trust switches to protect you
  860.   from sniffing; besides all this, some are just buggy. {ajax} ]
  861.  
  862. End notes
  863. ---------
  864.  
  865.   I hope this article has given you a few clues about how Ethernet
  866. actually works if you didn't know already, and even if you did it might
  867. have told you some interesting history, but maybe not.
  868.  
  869. Just a couple of (well 4) quick notes:
  870.  
  871. 1) When transmitting IP over ethernet there is a system called arp for
  872.    matching IP addresses and physical network addresses. (Look in
  873.    /proc/net/arp under linux I believe for the arp of the rest of your
  874.    network or ifconfig for that of your ethernet adaptor.)
  875.  
  876. 2) Ethernet hardware addresses are meant to be unique - I know of
  877.    multiple instances of people having 2 cards with the same address.
  878.  
  879. 3) Microsoft Office products embed your hardware address in documents.
  880.    This is a pretty unique identifier. (And how they got the dude who
  881.    wrote Melissa). Get vi now.
  882.  
  883. 4) Microsoft Windows 95 (I believe but I'm not sure - its one of them) is
  884.    dumb. If you make an ethernet packet addressed to FFFFFFFFFFFF  
  885.    (broadcast) but with the station's IP address then it will accept it
  886.    as arriving at the station's IP address, not by broadcast. (This would
  887.    work for any ethernet address but the hardware in the ethernet card
  888.    filters out packets not for the machine or broadcast.)
  889.  
  890. References
  891. ----------
  892. #1 - Stallings, W - Local and Metropolitan Area Networks. 4th Ed.
  893.       Macmillan 1993
  894. #2 - Johnson, H. W. - Fast Ethernet-Dawn of a new network, Prentice Hall
  895.       1996
  896.  
  897. ***********************************************************************
  898.       *** Music Reviews : kynik, bobtfish, ajax, orbitz
  899. ***********************************************************************
  900.  
  901. We have two songs this issue from fairly different genres. The first is
  902. "One Day" by the Pinkerton Thugs. They can be found online at:
  903.  
  904. http://www.pinkertonthugs.org/
  905.  
  906. BobtFish's review
  907. -----------------
  908. Originality - 2
  909. Talent      - 4.5
  910. Production  - 4
  911. I like it   - 3.5
  912.  
  913. What can I say about this song, it's a 1:56 long, speedy punk song about
  914. hating the world with a dodgy sample at the start.
  915.  
  916. However whilst it isn't anything that ground breaking here it is a good
  917. song, the riffs are solid and the drumming is interesting. The vocals
  918. are good and appropriate and you can hear all the parts individually so
  919. it's reasonably well mixed. The thing that I really liked about this song
  920. is it's catchy, very catchy, makes you want to bounce out the house and
  921. throw bricks through the neighbors' windows :) Which is what good punk is
  922. all about.
  923.  
  924. I don't think I'd run out and buy an album by these guys, or even be able
  925. to listen to an album all the way through, but as a single song I rather
  926. enjoy it and would probably dance to it if I heard it in a club and was
  927. stood up.
  928.  
  929. Kynik's Review
  930. --------------
  931. Originality - 2.5
  932. Talent      - 3
  933. Production  - 4.5
  934. I Like It   - 4
  935.  
  936. I'll admit, I'm a big punk fan, and this song makes me yearn for the days
  937. of oldschool hardcore. Straightforward, to the point, and undoubtedly
  938. punk. Unfortunately this particular song is a bit bland, even for punk.
  939. The vocals are good, and it sounds like the singer (unlike many punk
  940. bands) might actually have the ability to sing if he wanted to. I would
  941. have brought the level of the bass guitar up a bit (being a bassist, I
  942. want to be able to hear it) and the drums down just a touch. Nothing
  943. new here, but good punk if you like punk.
  944.  
  945. ajax's Review
  946. --------------
  947. Originality - 1.5
  948. Talent      - 4
  949. Production  - 4.5
  950. I Like It   - 3
  951.  
  952. Here's the thing about punk rock: there's very little room for
  953. creativity. Watch, I shall demonstrate.  The verse and instrumental bits
  954. consist of a I-V-vi-IV chord progression.  The chorus runs "Your so-called
  955. order amounts to inequality / One day, we'll make the bastards pay / Oi!".
  956. The chorus goes iii-IV-V-I.  It runs for one minute and fifty-six seconds.  
  957. See? You now know exactly what this song sounds like.
  958.  
  959. Maybe I'm disillusioned, but punk still hasn't changed the world, and
  960. neither have punk rock kids.  To its credit, the song sounds very well
  961. produced, and the band sounds tight and doesn't drag for a second.
  962. Punk's got its place, and every once in a while I enjoy it.  Every once in
  963. a while I like hip-hop, too.  And while I'd certainly see these guys live
  964. - I'd like to know what the rhythm guy is using for his distortion, nice
  965. and crunchy - I can't see myself spending money for punk CDs.  I like a
  966. little creativity in my guitar rock, and most of this "revolutionary",
  967. idealistic punk sounds like a broken record.  I'm amazed the groove hasn't
  968. worn through yet.
  969.  
  970.  
  971. The other is "Preacher" by My Ruin. My Ruin's homepage is unsurprisingly
  972. at:
  973.  
  974. http://www.myruin.com/
  975.  
  976. ajax's Review
  977. --------------
  978. Originality - 3.5
  979. Talent      - 4
  980. Production  - 3.5
  981. I Like It   - 4
  982.  
  983. Okay, so I'm biased in favor of female vocalists.  Sue me.  This song is
  984. downright creepy, while still rocking.  The rhythm guitar line is not
  985. terribly original, but the lead makes up for it by being un-obvious, and
  986. the bass counterpoints it well.
  987.  
  988. The singer's got a better-than-decent voice; it's a shame she hides it
  989. behind that stereo chorus effect.  Maybe if she turned the intensity down
  990. a notch, the difference between the right and left is a little harsh.  Of
  991. course, I only listened to it in headphones, so this probably isn't a
  992. problem.  The drummer, on the other hand, sounds like he's kicking a
  993. cereal box, and the snare drum sounds basically the same but with more
  994. reverb.  A shame, since it makes him sound terribly untalented, and the
  995. treble on the drums takes sonic space away from the vocals.
  996.  
  997. Overall, though, turn up the bass and scare your neighbors.
  998.  
  999. Kynik's Review
  1000. --------------
  1001. Originality - 3.5
  1002. Talent      - 3
  1003. Production  - 3
  1004. I Like It   - 4
  1005.  
  1006. This is a pretty decent song. I thought at first it was something new by
  1007. the Genitorturers, as the sounds are VERY close. (I'm actually not sure
  1008. who came first, My Ruin or Genitorturers) If you like one, you'll probably
  1009. like the other. I'm a fan of female-fronted rock bands (ask any of my
  1010. friends) and while I like this one, I'm not really impressed as much as I
  1011. have been before. I tend to go for more extreme vocal ranges, such as very
  1012. pure almost operatic singing to screaming or screeching. While the singer
  1013. does hit on both of those, it's not used to its fullest "wake up boy!"
  1014. potential. It's good guitar-driven industrial-ish music, and with a better
  1015. producer (the mix was weak at times) this song would have a bigger public
  1016. appeal.
  1017.  
  1018. Orbitz's review
  1019. -----------------
  1020. Originality - 4
  1021. Talent      - 3.5
  1022. Production  - 4
  1023. I Like It   - 1
  1024.  
  1025. I did not care much for this song. Hence the 1.0 on 'I Like It'.  I
  1026. thought the opening bass was pretty nice.  I am not much into goth type
  1027. music.  Talent got a 3.5 because I did not much care for the lyrics but I
  1028. liked the opening bass a lot so the song got points for that.  Tune
  1029. sounded like it was mixed together pretty good.  Originality is up
  1030. because I haven't heard much music like that. Overall I did not like this
  1031. song and found the lyrics to be weak.
  1032.  
  1033. Overall Rating, "One Day"
  1034. -------------------------
  1035. Originality - 2.00
  1036. Talent      - 3.83
  1037. Production  - 4.33
  1038. I Like It   - 3.50
  1039. Total       - 13.67/20.00 (68.35%)
  1040.  
  1041. Overall Rating, "Preacher"
  1042. -------------------------
  1043. Originality - 3.67
  1044. Talent      - 3.50
  1045. Production  - 3.50
  1046. I Like It   - 3.00
  1047. Total       - 13.67/20.00 (68.35%)
  1048.  
  1049. [ I swear I did not plan for that tie to happen. {kynik} ]
  1050.  
  1051. ***********************************************************************
  1052.       *** Future Issues
  1053. ***********************************************************************
  1054.  
  1055. Contemporary Telenet II
  1056.  
  1057. ***********************************************************************
  1058.       *** Credits
  1059. ***********************************************************************
  1060.  
  1061.                Editor:  Kynik      <kynik@firest0rm.org>
  1062.             Co-Editor:  ajax       <ajax@firest0rm.org>
  1063. Article Contributions:  Blakboot   <blakboot@firest0rm.org>
  1064.                         bobtfish   <bobtfish@firest0rm.org>
  1065.         Music Reviews:  orbitz     <orbitz@firest0rm.org>
  1066.            Commentary:  revcorrupt <revcrupt@firest0rm.org>
  1067.  
  1068. ***********************************************************************
  1069.       *** Subscription
  1070. ***********************************************************************
  1071.  
  1072. To subscribe to this 'zine:
  1073.   Email napalm@firest0rm.org with a subject of SUBSCRIBE
  1074. To unsubscribe:
  1075.   Email napalm@firest0rm.org with a subject of UNSUBSCRIBE
  1076. or find us online at:
  1077.   http://napalm.firest0rm.org/
  1078.  
  1079. Submissions, questions, comments, and constructive chaos may also be
  1080. directed to kynik@firest0rm.org or any of the contributors
  1081.  
  1082. ***********************************************************************
  1083.  
  1084.