Linux networking
1 / 30

Linux Networking - PowerPoint PPT Presentation

  • Uploaded on

Linux Networking. ITEC 370 George Vaughan Franklin University. TCP/IP and OSI Models. Origins of Unix. In the early 1960's, MIT experimented with Time sharing systems: CTSS and MAC. This developed into the Multics project.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' Linux Networking' - kenna

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Linux networking

Linux Networking

ITEC 370

George Vaughan

Franklin University

Origins of unix
Origins of Unix

  • In the early 1960's, MIT experimented with Time sharing systems: CTSS and MAC.

  • This developed into the Multics project.

    • Funded by ARPA (ARPA also funded the creation of the Internet, originally known as ARPANET).

    • Project included MIT, GE and Bell Labs (Included Dennis Ritchie and Ken Thompson from Bell Labs).

    • Bell Labs withdrew in 1969.

Origins of unix1
Origins of Unix

  • Ken Thompson wrote a game called 'Space Travel' but it was expensive to run on a Mainframe.

  • Thompson found an old PDP-7 with inadequate OS.

  • Thompson and Ritchie wrote the precursor to UNIX in assembly language.

Origins of unix2
Origins of Unix

  • Thompson and Ritchie wanted a portable OS for programmers.

  • Ritchie developed the language C as mid-level language to implement UNIX. This was very important because:

    • It allowed UNIX to be portable.

    • It made it much easier to maintain/modify UNIX

  • Portability allowed UNIX to spread to other platforms very quickly.

Origins of unix3
Origins of Unix

  • Bell Labs was part of AT&T. AT&T was a legal telecommunications monopoly and was not allowed to sell computers or software.

  • AT&T licensed UNIX source to Universities which made their own modifications and variations (specifically Berkley).

  • After divestiture of AT&T in 1984, AT&T commercializes UNIX.

  • Many commercial variants exist, including SUN Solaris, HP-UX, IBM AIX, Compaq TRUE64, etc. Source NOT available.

Where did gnu and linux come from
Where did GNU and Linux Come From?

  • In the mid 80's, Richard Stallman, a researcher at MIT, felt it was morally wrong that companies would not share source code.

  • Stallman created the Free Software Foundation (FSF) with the goal a creating a free OS, called GNU (GNU stands for 'GNU is Not Unix').

    • see:

  • In the late 1980's, Stallman wins the McArthur Genious Award ($300K) and uses the money to support the GNU effort.

Where did gnu and linux come from1
Where did GNU and Linux Come From?

  • GNU project decided to work on OS tools first (gcc, gdb, gnu make, gzip, etc) and the Kernel last.

  • In the early 1990's, Linus Torvalds wants source to Minix and is turned away. Torvalds creates a UNIX compliant Kernel and encourages other over the internet to help him.

  • In the mid 1990s complete, free, UNIX compliant OS's were created by merging GNU tools with Linux. This is what Redhat, Fedora, Knoppix, Debian, Mandrake, Suse, Knoppix, etc. have done.

  • GNU still working on its own Kernel (GNU HURD)

Where did gnu and linux come from2
Where did GNU and Linux Come From?

  • In a strict sense, Linux refers to the kernel.

  • The kernel is a single executable file.

  • In Fedora Core 6.0, the kernel is:

    • located at /boot/vmlinuz

    • based on version 2.4

    • approximately 1.7 Mbytes in size (small)

What is the ip address of my machine
What is the IP Address of My Machine?

  • ifconfig command

  • ifconfig displays the status of the currently active network interfaces.

    • > ifconfig

    • eth0 Link encap:Ethernet HWaddr 00:A0:CC:3B:0E:53

    • inet addr: Bcast: Mask:

    • inet6 addr: fe80::2a0:ccff:fe3b:e53/64 Scope:Link


    • RX packets:136 errors:1 dropped:0 overruns:0 frame:0

    • TX packets:171 errors:0 dropped:0 overruns:0 carrier:0

    • collisions:0 txqueuelen:1000

    • RX bytes:14102 (13.7 KiB) TX bytes:18945 (18.5 KiB)

    • Interrupt:5 Base address:0xef00

What is the ip address of a remote machine
What is the IP Address of a Remote Machine?

  • nslookup command (also in Windows)

    • A program to query Internet domain name servers

  • Example:


    • Server:

    • Address:

    • Non-authoritative answer:

    • Name:

    • Address:

Is the remote machine alive
Is the Remote Machine Alive?

  • Example of ping command: (also in Windows)

    • > ping

    • PING ( 56(84) bytes of data.

    • 64 bytes from icmp_seq=1 ttl=248 time=16.5 ms

    • 64 bytes from icmp_seq=2 ttl=248 time=13.0 ms

    • 64 bytes from icmp_seq=3 ttl=248 time=11.7 ms

    • 64 bytes from icmp_seq=4 ttl=248 time=14.9 ms

    • 64 bytes from icmp_seq=5 ttl=248 time=12.2 ms

    • --- ping statistics ---

    • 5 packets transmitted, 5 received, 0% packet loss, time 4000ms

    • rtt min/avg/max/mdev = 11.710/13.687/16.518/1.794 ms

Etc hosts

  • /etc/host file:

    • Text file that associates IP addresses with hostnames (aliases).

  • /etc/hosts on Einstein

    • # Do not remove the following line, or various programs

    • # that require network functionality will fail.

    • localhost.localdomain localhost

    • qwprlx17

    • qwprwi04

Etc protocols

  • A text file that maps protocol names with protocol numbers used as IDs in the IP layer.

  • Example from Einstein (very small subset):

    • ip 0 IP # internet protocol, pseudo protocol number

    • icmp 1 ICMP # internet control message protocol

    • tcp 6 TCP # transmission control protocol

    • udp 17 UDP # user datagram protocol

    • gre 47 GRE # Generic Routing Encapsulation

    • ipv6-crypt 50 IPv6-Crypt # Encryption Header for IPv6

    • ipv6-icmp 58 IPv6-ICMP # ICMP for IPv6

Etc services

  • A text file providing that maps the following:

    • Human friendly textual names for internet services

    • Assigned port numbers

    • Protocol types

  • Port assignments made by IANA

    • See

  • Example from Einstein:

    • # service-name port/protocol [aliases ...] [# comment]

    • tcpmux 1/tcp # TCP port service multiplexer

    • rje 5/tcp # Remote Job Entry

    • echo 7/tcp

    • systat 11/tcp users

    • daytime 13/tcp

    • ftp 21/tcp

    • ssh 22/tcp # SSH Remote Login Protocol

    • telnet 23/tcp


  • Historically, each network service is supported by its own daemon process or processes.

  • A telnet daemon would support the telnet service, the ftp daemon would support the ftp process, etc.

  • Many daemons are running, often not being used.

  • Each service had to worry about security from the point of connection


  • inetd (precursor to xinetd) was created to address the issue of the abundance of network service daemons.

  • inetd was designed to listen on ports for network service requests.

  • when a request arrived at a port, inetd would fork the appropriate process (ftp, telnet, etc) to service the request.

  • Therefore services like ftp, telnet, etc were no longer daemons - they are now transient processes.

  • Inetd is sometimes referred to as a ‘Super Server’.

Etc inetd conf inetd n d
/etc/inetd.conf(inetd, n.d.)

  • File format:


  • service

    • Gives the service name.

    • The service name has to be translated to a port number by looking it up in the /etc/services file.

  • type

    • Specifies a socket type

      • stream (for connection-oriented protocols)

      • dgram (for datagram protocols).

Etc inetd conf inetd n d1
/etc/inetd.conf(inetd, n.d.)

  • protocol

    • Names the transport protocol used by the service.

    • Must be a valid protocol name found in the /etc/protocols

  • wait

    • This option applies only to dgram sockets.

    • It can be either wait or nowait.

    • If wait is specified, inetd executes only one server for the specified port at any time.

    • Otherwise, it immediately continues to listen on the port after executing the server.

Etc inetd conf inetd n d2
/etc/inetd.conf(inetd, n.d.)

  • user

    • This is the login ID of the user who will own the process when it is executing.

  • server

    • Gives the full pathname of the server program to be executed.

  • cmdline

    • This is the command line to be passed to the server.

    • This field is empty for internal services.

Etc inetd conf inetd n d3
/etc/inetd.conf(inetd, n.d.)

  • Sample File (Subset)

    • #

    • # inetd services

    • #

    • ftp stream tcp nowait root /usr/sbin/ftpd

    • login stream tcp nowait root /usr/sbin/rlogind

    • #

    • # inetd internal services

    • #

    • time stream tcp nowait root internal

    • time dgram udp nowait root internal

    • echo stream tcp nowait root internal

    • echo dgram udp nowait root internal


  • xinetd stands for eXtended InterNET services Daemon.

  • Created by Panos Tsirigotis at the University of Colorado.

  • More secure than inetd - designed to prevent Denial of Service attacks.

  • Can control access by:

    • address of remote host

    • time of access

    • name of remote host

    • domain of remote host

  • xinetd is sometimes referred to as the “super-server”.

Xinetd conf

0001: #

0002: # Simple configuration file for xinetd

0003: #

0004: # Some defaults, and include /etc/xinetd.d/


0006: defaults

0007: {

0008: instances = 60

0009: log_type = SYSLOG authpriv

0010: log_on_success = HOST PID

0011: log_on_failure = HOST

0012: cps = 25 30

0013: }


0015: includedir /etc/xinetd.d


xinetd is the name of the daemon process.

xinetd config file: /etc/xinetd.conf

instances: max number of simultaneous servers for a given service


first number is max connections per second

second number is number of seconds to wait before re-enabling service after cps has been exceeded.


Xinetd d

  • In addition to having a config file for the xinetd daemon itself, each supported service (ftp, telnet, etc) has its own config file in /etc/xinetd.d

    [[email protected] xinetd.d]# ls

    amanda cups-lpd eklogin ipop3 pop3s services time

    amandaidx daytime finger klogin rexec sgi_fam time-udp

    amidxtape daytime-udp gssftp krb5-telnet rlogin swat

    chargen dbskkd-cdb imap kshell rsh talk

    chargen-udp echo imaps ktalk rsync telnet

    comsat echo-udp ipop2 ntalk servers tftp

Xinetd d1

  • Example: What follows is the configuration file for telnet:

    0001: # default: on

    0002: # description: The telnet server serves telnet sessions; it uses \

    0003: # unencrypted username/password pairs for authentication.

    0004: service telnet

    0005: {

    0006: flags = REUSE

    0007: socket_type = stream

    0008: wait = no

    0009: user = root

    0010: server = /usr/sbin/in.telnetd

    0011: log_on_failure += USERID

    0012: disable = no

    0013: }



  • SSHD - OpenSSH SSH daemon

  • replaces rsh and rlogin

  • forks a new sshd daemon for each new connection

  • communication is encrypted

  • used on einstein and can comes configured on RedHat 9.0


  • SSHD supports:

    • ssh

      • similar to telnet

      • client uses tool like putty (Windows), ssh (Linux/Unix)

    • secure ftp

      • similar to ftp

      • client uses tool like winscp2 (Windows), sftp (Linux, Unix)


  • Open Source application that runs on Linux, Unix, etc.

  • It allows Linux machine to appear like a Windows file server to Windows client machines

  • It also allows Windows clients to make use of printing services on a Linux machine.

  • Supports Server Message Block (SMB) Protocol.

  • Windows client machines can mount Unix directories to their PCs (as added drives)

  • Included in most Linux distributions.

Nfs nfs n d
NFS(NFS, n.d.)

  • Network File System

  • A protocol developed by SUN in 1984

  • Allows a remote filesystem to be mounted on a local computer.

  • Originally implemented on top of UDP

  • Newer versions implement NFS protocol on top of TCP for better WAN support.







  • Inetd, n.d. The inetd Super Server. Retrieved on 02/20/2007

  • NFS, n.d. Network File System (Sun). Retrieved on 02/20/2007