CTS 2333
Unix/Linux Networking

Unix/Linux Networking course: syllabus, weekly schedule, and resources
View Weekly Course Schedule 

View Course Resources.

View Project 1 requirements.
View Project x requirements.
View Project 2 requirements.
View Project 3 requirements.
View Project 4 requirements.
View Project 5 requirements.
View Project 6 requirements.
View Project 7 requirements.
View Project 8 requirements.

              Other interesting links:

Visit the Tampa-St. Pete Linux User's Group (SLUG).  This group holds monthly meetings.
Most Unix and Linux software is actually GNU software (www.gnu.org), a project of the Free Software Foundation.
Search for RPMs and download updates from RPMFind.net.
You can download free distributions of Unix and Linux from distrowatch.com.
Read the real Unix History article at Spectrum.IEEE.org.  More information can be found at The Open Group.
View Solaris Unix certification and Oracle Unix exam objectives.
View Linux LPI certification and LPI-1 exam objectives.

Syllabus

Fall 2019

Policies for CTS-2333
Time & Place: Ref. No. 13832: Monday, Wednesday 7:00 – 8:15 PM, Dale Mabry room DTEC–461
This is an independent study class, with no scheduled meetings after orientation.
Instructor: Name:  Wayne Pollock
E-mail:  Internet:
Office & Phone:  DTEC–404, 253–7213
View my Office Hours.
Skype ID:  wpollock@hccfl.edu    
Homepage URL:  https://wpollock.com/
Texts: Hunt, Craig. TCP/IP Network Administration, 3rd edition.  ©2002 O'Reilly Media, Inc.  ISBN-10: 0-596-00297-1, ISBN-13: 978-0-596-00297-8
Optional:  Roderick W. Smith, Advanced Linux Networking, ©2002 Pearson Education (Addison-Wesley).  ISBN-10: 0-201-77423-2.
Optional:  Evi Nemeth et. al., Unix and Linux System Administration Handbook, Fifth Edition.  ©2017 Pearson Education, Inc.  ISBN: 978-0-13-427755-4.

HCC bookstore on-line

Description: (This course is 3 credit hours long.)  This course covers the concepts, terminology, management, tools and administration of networking services on Unix and Linux systems.  Topics include configuring Unix and Linux networking, configuring routing, DNS and configuring name servers, Windows network integration with Samba, file sharing services with Samba and NFS, and other common network services such as DHCP and FTP.  Students will review basic network concepts such as network models, LANs, and WANs, IPv4, IPv6, and PPP.  Students will also gain hands-on experience with basic network security, and network configuration and troubleshooting using common network management tools.
Objectives: After completing this course, the student will be able to:
  1. Understand the role of a network administrator (or a system administrator who must double as a network administrator); understand the job titles, common tasks, certifications, and soft skills required.
  2. Describe networking concepts including: the use of protocols, addressing hosts, virtual circuits; packet switching; MTUs, simplex, half and full duplex; point-to-point, unicast, broadcast, and multicast; throughput and bandwidth; autonomous systems; NAT (or PAT or IP Masquerade); multi-homing; and VLANs
  3. Describe the history of the Internet; Internet exchange points; common network technologies including Ethernet, TCP/IP, IPv4 and IPv6
  4. Understand ISPs and tiers of service and how to pick ISPs
  5. Describe additional network technologies and the issues (including uses, security, and cost) about them: ATM (and LANE), DSL, VPN, VoIP, and link aggregation (a.k.a. bonding, IP multipath, EtherChannel, ...)
  6. Name network standards bodies (ISO, RFCs, IEEE) and describe their relevance
  7. Understand network structures and classifications (and associated issues) including client-server and peer-to-peer (issues: design, security, privacy, naming, etc.), LANs, MANs, and WANs, network topology (physical and logical, token-ring, bus, star, mesh, point-to-point)
  8. Use and explain the OSI and TCP/IP network models
  9. Name and identify network hardware and their functions: NICs, serial ports, repeaters, bridges, hubs, switches, routers, firewalls
  10. Describe the functions of an Ethernet NIC (duplex, bandwidth, promiscuous mode operation, auto-negotiation) and a NIC device driver (Layer 2 implementation (e.g., MAC address assignment), copy packets to/from host RAM, etc.)
  11. Identify cabling types and their characteristics, including parallel, ribbon, serial and null-modem, CAT-5, fiber optics, infra-red, and wireless; Identify Ethernet patch cable types and their use: straight, cross-over, and roll-over; understand capacity naming: T# standards, OC# standards, and 802.3 standards' common names (e.g. 10BaseT)
  12. Identify physical network layout standards (EIA/TIA 568), including common terminology (MDF, POP, demarc, vertical and horizontal wiring, and catchment area) and network transmission issues (including EMI, RMI, ESD, latency, and cross-talk)
  13. Design networks for some common and simple situations; understand why a network expert is needed in most other situations; understand client and server network hardware requirements, including costing and ROI calculations
  14. Understand, use, plan, and troubleshoot IPv4 addressing: using binary, hex, and dotted-decimal numbers, network and broadcast addresses, subnet masking (and CIDR)
  15. Understand and describe static, dynamic, and zeroconf address assignment, special and reserved IP addresses, provider independent (PI) addresses and multi-homing (with BGP)
  16. Understand the basics of IPv6 addressing
  17. Install and use Wireshark (formally “Ethereal”)
  18. Understanding Ethernet: IEEE 802 standards; addressing, protocol limitations, ARP and RARP protocols, installing Ethernet NICs; identifying fields using Wireshark
  19. Discuss and understand TCP/IP protocols and concepts: handshake, TCP, UDP, IP, ICMP, ARP, DHCP, and others; identify protocols and fields with Wireshark
  20. Understand hostnames, domain names, and name servers, how to use WHOIS database, ICANN and IANA, DNS caching, in-addr.arpa, top-level domain names, root servers, reserved names, how to obtain and register hostnames and domain names
  21. Locate, use, and maintain network documentation
  22. Identify network service management and policy concepts (e.g., AUP, host naming policy, etc.)
  23. Use common network (client) utilities, including ftp, tftp, sftp, scp, ssh, telnet, wget, and links (a non-GUI web browser)
  24. Describe other network protocols (such as IPX/SPX and NetBIOS), NETBEUI, AppletTalk
  25. Understand network services and port numbers: how they are used and assigned (by the IANA), well-known, registered, and private/dynamic port numbers, the use of the services file, relationship of port numbers to sockets; and identify some common port numbers including 20, 21, 22, 23, 25, 53, 80, 443, 110, 119, 137, 139, 143, 161, and 445 (993 and 995 too, but not for any certification exams I know); and understand RPC and the role of the portmapper daemon
  26. Understand routing concepts including: IP forwarding, routing versus routed protocols, routable and non-routable protocols, static and dynamic routing, best path determination, routing tables, default routes, and ICMP redirects; and understand IP routing protocols including a basic understanding of distance-vector, link-state, and policy routing protocols such as RIP, RIP2, OSPF, EIGRP, and BGP; hop-count, TTL, and other route metrics
  27. Describe network security concepts including common threats, the basics of IPSec, GRE tunneling, common VPN technologies, centralized (and wireless) access control with Kerberos, RADIUS, and TACACS, packet filtering, service proxies, SOCKS proxies, network intrusion detection and prevention
  28. Identify remote access technologies including serial consoles, KVM, PC Anywhere, DS view, VNC, RDeskTop, and XDMCP
  29. Describe the basic concepts and issues of Clusters (HA and HP) and grids; and NAS, SAN, AoE, and other storage network technologies
  30. Start and stop service daemons; using and configuring inetd and xinetd; monitoring service daemon status with ps, log files, and other tools.
  31. Configure NICs with ethtool, mii-tool; /etc/ethers (and related files)
  32. Configure the DNS (domain name system) resolver: setting a DNS system in /etc/nsswitch.conf; configuring a default domain name, changing/viewing the hostname using hostname; name server IP address(es), and other options in /etc/resolv.conf; set hostnames and aliases for IPs in /etc/hosts and other OS-specific ways for Red Hat and Debian based Linux distributions, BSD and Solaris Unix; and using other resolver-related files such as /etc/networks, /etc/nodename (or hostname or HOSTNAME), etc.
  33. Configure TCP/IP (and IPv6) for Unix/Linux workstations and servers: set NIC to use DHCP and over-ride DHCP server assigned settings, assign static IP to a NIC; use ifconfig; understand and configure IP Alias (virtual interfaces)
  34. Configure routing for Unix/Linux workstations and servers; use the route command; configuring a default route; identification of common routing daemons: ripd, zebra, gated, quagga, xorp, in.routed (Solaris), routed (FreeBSD, which also supports gated and zebra); configure zeroconf networking
  35. Configure network access controls using TCP Wrappers (libwrap), by using /etc/host.allow and host.deny files; set a mostly-closed policy; identify other ways to implement service access controls including service specific configuration, xinetd, PAM, and firewall rules
  36. Troubleshoot TCP/IP network problems using log files, a trouble-shooting methodology, and some common tools including ping, traceroute, telnet, nc (netcat), openssl, netstat, route, ifconfig, Wireshark, tcpdump, and others.
  37. Configure name servers including a caching-only server with nscd and BIND, and a primary server and a secondary server with BIND; editing BIND configuration files: named.conf, rndc.conf and rndc.key, zone files (including in-arpa zone); trouble-shooting DNS problems with named-checkconf, named-checkzone, nslookup, dig, and Internet tools such as DNSstuff.com
  38. Understand and configure PPP and secure using CHAP, PAP, and MS-CHAPv2; Understand PPPoE and configure ADSL
  39. Understand Wi-Fi concepts and configure (on Linux); identify Wi-Fi security issues and simple counter-measures (including captive portals); and describe Wi-Max
  40. Modify a simple iptables firewall configuration to enable additional services (or disable services)
  41. Understand and configure file sharing services using NFS and Samba
  42. Understand and configure common network services such as DHCP, FTP (including anonymous FTP), a basic LDAP server, SSH and telnet
  43. Monitor the system and network using various tools and utilities such as log files, netstat, nmap, snort, nagios, SNMP and RMON, and MRTG
  44. Understand the basic concepts of and tools for network traffic management and traffic shaping in Linux; understand and configure multi-homing and load balancing without BGP in Linux
Prerequisites: CTS 2322 or permission of the instructor.  Students enrolled in a degree or college credit certificate program must complete all prerequisites.  Note!  HCC registration computers may not check for prerequisites before allowing you to enroll.  Be certain you have all required prerequisites or you won't have much of a chance of success.  Also you may be dropped from the class.
Facilities: Assignments can be performed on the Dale Mabry campus Linux computers, which can be accessed from the classroom or from some computers the open computer lab.

YborStudent.hccfl.edu (a Linux server) can be accessed from on or off campus and can be used to practice, examine configuration files, read man pages, and do some assignments.  From off-campus, you can also practice using any Unix/Linux system available (or install Linux at home).  It may be possible to install your systems on USB 3 flash disks, can carry it with you to work on from anywhere.  (This may require extra configuration, so your system works on different computers.)

You will also use the YborStudent Wiki for some of your work and having class on-line discussions.

You will need your own flash disk (preferably USB-3 compliant), writing materials, and Scantron 882–E or 882–ES forms.

You can use HawkNet (WebAdvisor) to obtain your final grade for the course.  You can use your assigned Hawkmail (Hawkmail365) email address, or use Canvas, if you wish to discuss your grades via email.  (Note, it may be possible to setup your Hawkmail account to forward all received emails to some outside email account; but you still must send mail from your official HCC account to discuss grades.)

Most college systems now (or will in the future) use a single sign-on user ID, known as HCC “NetID”.  Visit netid.hccfl.edu to register and to update your credentials.  (Your initial password is your uppercase first name initial, lowercase last name initial, and your seven digit student ID number.)  Note the quickest way to resolve login issues is the HCC Live Web Portal (hcclive.hccfl.edu).

The college provides wireless network connections for students and guests on Dale Mabry campus.  For students, select the network “HCC_Wireless” from the list of available networks.  Follow the on-screen steps by entering your HCC email address and network password.  For HCC guests: Select “HCC_Guest” from available networks.  Follow the on-screen steps to complete registration.  This network will be available between 7:00 AM and 10:00 PM.  These are the only official HCC networks; don't use others that may appear.

Hawk Alert text messaging service allows you to receive important information regarding campus closures or emergencies.  You may also sign up for financial aid notifications and registration and payment deadlines.  This is a free service, although some fees may be applied by your cellular service provider or plan for text messages.  To sign up, or for more information, visit www.hccfl.edu/hawkalert/.

HCC DM Open Lab

Computers with PuTTY installed are located in the computer science department open lab in DTEC–462.  Additionally, the back-row has computers identical to the ones in our classroom.  So if you need to work on your projects and the classroom is in use, you can request a lab tech to put your hard disk in one of the open lab computers.  (You can call the open lab to determine if the classroom will be available, or to have them pull your hard disk in advance.  The open lab phone number is:  253-7207.)

Lab hours are:

Dale Mabry campus open lab hours
Monday – Thursday8:00 AM to 10:00 PM
Friday 8:00 AM to 4:30 PM
Saturday 8:00 AM to 2:30 PM

(Note:  Lab technicians (“Lab Techs”) are not teaching assistants or tutors, and shouldn't be expected to help you with your coursework.)

Rules for Using HCC Facilities

  1. No food or drinks near computer equipment.
  2. Students bringing their own laptops need to use the wireless network only.  Students cannot disconnect network cables from classroom's computers to connect their personal devices.
  3. Students are not allowed to disconnect monitors or computers to power their personal equipment.
Grading:
Grading Policies
Projects (7): 100%
3 equally weighted closed-book multiple choice exams     100%
Wiki (class study guide) assignment     +5
Classroom participation: +5%

Grading scale:  A=90-100,   B=80-89,   C=70-79,   D=65-69,   F=0-64
(You can elect to “audit” the class during the add/drop period.)

(Collaborating on the class wiki counts as up to 5 points extra credit, as does active class participation.  See below for details.)

Policies:
  • Course format is interactive lecture, with most projects done outside of scheduled class time.
  • No make-up exams will be offered without the prior approval of the instructor.  If a make-up exam is offered, you can take the exam in my office during my regular office hours, or from the Dale Mabry Testing Center.  (Check for their hours of operation, and make sure to give yourself sufficient time to complete an exam.)  You will need to make an appointment to schedule a make-up exam.)
  • Exams will be closed book and closed note multiple choice exams.  While the exams are non-cumulative, each does build upon knowledge acquired earlier.  Exams are based mostly upon material presented in class.  However some questions may be from assigned readings (the textbooks and on-line resources).
  • Exams will only cover material discussed in class or assigned as reading before the exam.  Should the class fall behind the course schedule, some topics shown on the syllabus due for an earlier exam will be tested on the following exam instead.
  • The schedule for the final week of the term may cause a conflict between our class schedule and another class's final exam.  It is up to you to determine if you will have a conflict, and to bring it to the attention of your instructor, so that appropriate arrangements can be made.
  • Regular attendance is imperative for the successful completion of this class.  The textbook and on-line resources should be considered as required course supplements; in other words, the course is not based on the text.
  • All phones, pagers, and beepers must be turned off during class time, except with prior permission of the instructor.  No food or drink is permitted in HCC classrooms.
  • Attendance will be taken within 5 minutes of the start of class; after 4 unexcused absences and/or lateness, the student will lose 2 points off the final grade for each additional occurrence.
  • If you miss a class, you are still responsible for the material covered in that class.  All students should exchange contact information (name, email address, phone number) with at least one other student in the class.  If you must miss a class, you should then contact another student and request they take class notes for you.  (Note, Hawknet has Hawkmail365 email for HCC students.)
  • Credit for class participation includes attendance, preparedness, and adding to class discussions by asking questions and participating in discussions.  Playing computer games, surfing the Internet, or working on assignments for this or other classes during class time will lose you credit.
  • Additional time outside of class will be required.  For typical students an average of between 8 and 12 hours each week outside of class are required for preparation, practice, and projects.
  • Students are expected to prepare for each class by completing all reading assignments, reviewing examples and model solutions provided, and practicing outside of class.  This is important — you cannot learn a skill such as Unix/Linux system administration only by attending class and reading books.  You must practice several hours a few days each week!  If you won't have enough time available, consider auditing the course.
  • Students are expected to check the class website regularly.  Any syllabus changes, class cancellations, project assignments, and homework assignments are announced in class and posted to the website and the RSS feed for this class.
  • A student shall not, without my express authorization, make or receive any recording, including but not limited to audio and video recordings, of any class, co-curricular meeting, organizational meeting, or meeting with me.  Further, you do not have my permission to post on the web or otherwise distribute my class lectures and other course materials.  (You can distribute freely any materials I make publicly available from the HCC (or the wpollock.com) website, without asking permission, provided you give me credit for the work and don't alter it.  Any other use will require expressly given permission.)
  • Working together on individual assignments is considered as cheating!  Turning in someone else's work without giving them credit is also considered cheating (plagiarism).  Cheating will result in an automatic F (zero) for the project for all parties.  Also, you can only earn credit for your own work and not someone else's, even if you do cite your sources.  Note that some projects may be group projects, where each member of a small group works together on a project.  It is also okay to ask a fellow student for class notes (in the event you miss a class) or for help in understanding the text or material given to the class (e.g., examples on the class website).  You are encouraged to study together as well.
  • Because you can learn a lot from your peers, both in the class and in the broader community, I encourage collaboration with both.  However, do not mistake this as a license to cheat.  It is one thing to learn from and with your peers; it is another to pass their work off as your own.  With respect to assignments for this class:
    • You are expected to document any collaboration that takes place.
    • Absolutely no electronic transfer (or other copying) of code between students is permitted.
    • Any code (shell commands) that you “find” on the Internet must be cited, with an active link to that code.
    • While you are encouraged to engage in conversations in online forums, under no circumstances are you permitted to solicit other individuals to complete your work for you.  (So, no posting assignments or homework questions and asking for answers.)
    • Ultimately, YOU are responsible for all aspects of your submissions.  Failure to be able to explain and defend your submission will be treated as a violation of academic integrity.
  • You must abide by the HCC Acceptable Use Policy (AUP) for computers and services.  In particular, you must not run network scanners, or attempt to obtain administrator (“root”) privileges or otherwise disrupt HCC computers and services.  In some explicitly stated circumstances, some parts of the AUP may not apply.  If in any doubt, ask!
  • You must follow the academic honesty policy and the student code of conduct for HCC.  A second cheating offense will result in an “F” for the course, and your name will be turned over to the dean for further handling.  I take these matters very seriously.  You have been warned!
  • Every effort will be made to stick to the weekly schedule for our course.  However it may happen that we will fall behind the schedule at some point.  If so, no topics will be skipped.  Instead we will attempt to catch up over the following weeks.
  • Please be aware that if we fall behind on the weekly schedule, the topics discussed may not match what shows on the syllabus.  The weekly schedule may (but probably won't be) updated in this case.
  • In case we do fall behind, homework assignments (if any) are automatically postponed until we do discuss that topic in class (i.e., the next class).  Projects and in-class exams will not be automatically postponed.  Should your instructor deem it necessary, projects and exams may be rescheduled; this will be announced in class and on the RSS feed.
  • Communications Policy:  I will respond to your emails within 48 hours or two business days.  HCC policy is that grades can only be discussed in person during office hours, or via email only if you use your assigned HCC HawkNet (Hawkmail365) email account.
  • No appointment is necessary to see me during my scheduled, on-campus office hours.  You can just “walk-in”.  You can make appointments for other times as long as I'm available.
  • Occasionally my office hours will be canceled on short (or no) notice, for example if the dean calls me for a meeting.  Before driving out to campus just for my office hours, you should contact me the day before to make sure I still plan to be there.
  • Late Policies:  Late assignments (homework assignments, projects, or exams) generally will not be accepted.  An assignment is late if not turned in by the start of class on the day it is due.

    Late assignments will be accepted late only if you obtain the instructor's permission prior to the due date of the assignment, or for a documented serious medical reason.  All late assignments are subject to a late penalty of at least one letter grade (10%) regardless of the reason for the delay.

    Projects and homework assignments later than one week will receive a more severe late penalty; very late assignments without adequate excuses will receive a grade of “F” (0).  However if you have a very good reason your instructor may waive any or all of the late penalty.  (Examples of good reasons include extended illness that prevents working, being out of town for work, or military service.  Remember, documentation will be required.)

  • The dangers of the flu or another contagious disease require some changes to normal policies.  HCC has implemented the recommendations for institutions of higher learning of the CDC.  (See www.cdc.gov/h1n1flu/guidance/ and www.flu.gov/ for guidance from the CDC.)  You won't need documentation if you miss class due to the flu.  (But if you think you have the flu, you should see a doctor as soon as you can.)  In the unlikely event of a school closure due to the flu, some plan to make up the missed work will be made.

    If you think you have the flu, stay home.  Do not come to HCC until 48 hours after your fever has broken as you are still infectious.  Also, people are infectious to others for a day or so before they have any symptoms.  Flu is spread by touching doorknobs, computer keyboards, railings on stairs, etc., that were touched by someone with the flu.  Avoid shaking hands; use the “fist shake” (touching of fists) if you must use a physical greeting.  The most effective way to avoid catching the flu is to wash your hands frequently, especially after touching something that was touched by others.  Avoid unnecessary touching of eyes, nose and mouth.  While not as good as properly washing hands, hand sanitizers have been installed throughout the campus; use them often.

Projects: Projects will be assigned from the class web page at various times.  You will have sufficient of time to complete the projects, at least a week but usually two weeks.  Although most projects will be group projects, there may be some individual assignments, and you must work individually on the non-group projects.  You may work together in small groups on group projects, provided the names of all who worked together are listed.  Each student must still submit their own copy.  Projects are typically completed outside of regular class hours.

Projects are graded on the following scale:

A = 95% (Excellent: Good design with good comments, style, and extras)
B = 85% (Good: Good design, some comments, readable style, and it works)
C = 75% (Acceptable: Project objectives are met or are close to being met)
D = 65% (Unacceptable)
E = 10-64% (Variable credit: At least you tried)
F =  0% (Didn't hand in the project)

Minor extras worth +5 points, minor omissions or poor design worth -5.

Projects are not graded when turned in.  They are graded all at once, sometime after the project deadline has passed (usually the next weekend).  Further details will be provided with your first project.  (See also submitting assignments below.)

Homework
Assignments:
For this course your weekly homework assignment is to update the study guide on the class wiki with a substantial contribution based on the material covered in class, from assigned readings, or from other resources you have studied.  A substantial contribution means adding new material, adding references (links), or elaborating (or correcting) some previous addition made by you or another student.  You should add at least two, but no more than five items.  (This is to ensure all students have a chance to add something.)  Do not work on the wiki during class.

You should use wiki formatting and not HTML formatting when possible, and be sure to spell-check your work.  The wiki will automatically send your instructor an email for each update, so there is no need to add your name to your contribution.  However, be sure your wiki account name is something your instructor will recognize as belonging to you!

Your instructor is the editor and moderator of this study guide (and for all material posted on this wiki site).  While some time will be given for students to correct postings, in order to ensure an accurate study guide the instructor may edit, add to, or remove material posted by students.

The homeworks will be graded on or after the following week (so you have the weekend to post your homework).  Your contribution will be graded based on correctness, completeness, and clarity.  Each week (for at least 12 weeks), students can earn up to 8 points toward the homework grade.

Wiki
Assignment:
Extra credit can be earned by updating the study guide on the class wiki with a substantial contribution based on the material covered in class, from assigned readings, or from other resources you have studied.  A substantial contribution means adding new material, adding references (links), or elaborating (or correcting) some previous submission.  You should use wiki formatting and not HTML formatting when possible, and be sure to spell-check your work.  The wiki will automatically send your instructor an email for each update, so there is no need to add your name to your contribution.

Your instructor is the editor and moderator of this study guide (and for all material posted on this wiki site).  While some time will be given for students to correct postings, in order to ensure an accurate study guide the instructor may edit, add to, or remove material posted by students.

The wiki assignment will be graded on or after the following week (so you have through the weekend to post something for the previous week).  Your contributions will be graded based on correctness, completeness, and clarity.  Note regular posting is required to earn extra credit; one large post the last week of the term will not earn much (or any) extra credit.

Do not post during class hours.  Do not attempt to post you complete class notes for the day.  Each submission should be on one or two (no more than three) items covered in that class.  (You must leave something for the other students to post!)

Submitting Projects: Projects should be submitted by email via Canvas mail, or directly to .  Please use a subject such as “Unix/Linux Networking Project #1 Submission” so I can tell which emails are submitted work.  Send only one assignment per email message.  Email your projects by copy-and-paste into your mail program.  (Please do not send as attachments!)  If possible, use the “text” and not the “HTML” mode of your email program.  Do not send any email to wpollock@YborStudent.hccfl.edu as I may not read that account regularly.

In the event a student submits more than once for the same assignment, I will ignore all but the last one received up to the deadline or until I have provided grading feedback.  Assignments submitted after the deadline will not count toward your grade except as allowed by the course late policy.  You cannot resubmit an assignment once it has been graded.

The HCC email server automatically accepts and silently discards email with certain types of attachments.  If you must send email to my Internet (non-YborStudent) email account please avoid using any attachments, but especially “zip” files.  To send email with a “.zip” attachment you must first rename the file extension to “.zap” and then send the renamed file as an attachment.

To avoid having your submitted work rejected as “spam”, you can use Hawkmail365 to send email to professors.  (This doesn't always work either!)  the most reliable option currently is to send messages via Canvas.

If you have an email problem you may turn in a printout instead.  Be sure your name is clearly written on the top of any pages turned in.  Please staple multiple pages together (at the upper left).

Academic Calendar
HCC Academic Calendar:
Classes Begin: Monday  8/19/2019   (First class meeting: Tuesday 8/20/2019)
Add-Drop Ends: Friday   8/23/2019
Orientation Period Ends:  Wednesday   8/28/2019
Last Day to Withdraw:  Saturday  10/26/2019
Classes End: Tuesday  10/10/2019 
Grades Available:  Thursday  10/12/2019  (from HawkNet)
HCC is closed on: Saturday–Monday  8/31/2019–9/2/2019 (Labor Day),
Tuesday  10/22/2019 (Faculty In-Service Day),
Saturday–Monday  11/9/2019–11/11/2019 (Veterans' Day),
Thursday–Sunday  11/28/2019–12/1/2019 (Thanksgiving Holiday)

Consequences of Dropping or Withdrawing

Dropping or withdrawing may have an impact on financial aid, veteran’s benefits, or international student visa status.  Students are encouraged to consult with a financial aid, the VA certifying official, or the international student advisor, as appropriate, prior to dropping or withdrawing from class.

Requests For Accommodations

If, to participate in this course, you require an accommodation due to a physical disability or learning impairment, you must contact the Office of Services to Students with Disabilities, Dale Mabry campus: Student Services Building (DSTU) Room 102, voice phone: (813) 259–6035,  FAX: (813) 253–7336.

HCC has a religious observance policy that accommodates the religious observance, practices, and beliefs of students.  Should students need to miss class or postpone examinations and assignments due to religious observances, they must notify their instructor at least one week prior to a religious observance.

 

Quotes on learning
Quotes:         Tell me and I'll listen.
Show me and I'll understand.
Involve me and I'll learn.
    — Lakota Indian saying
        Learning is not a spectator sport!     — Chickering & Gamson

Course schedule for CTS 2333

Daily course schedule
Dates
Mon           Wed
Topics, Assigned Readings, and Assignment Due Dates
  8/19   Course introduction.  Network standards and standard organizations (RFCs, IEEE, ISO, ...).  SI units. 
Readings:  Hunt: Chapters 1, 3.  on-line network standards, organizations resources
  8/21  

   
Network concepts review: protocols, topologies, addressing.  Categorization of networks: by size (LAN, WAN), type (client-server, peer-to-peer), by technology/protocols (Ethernet, TCP/IP).  List of common network services.
Readings:  Hunt: Chapters 4, 5.  Frisch: Pages 180–202.
  8/26    8/28   Internet brief history and overview: ARPAnet, NSFnet, Internet Exchanges, Autonomous systems (AS), peering and transit, ISPs.  IP address allocation: IANA, regional Internet registries (RIRs).  Network models: TCP/IP model, OSI model.
Readings:  Hunt: Chapters 4, 5.  Frisch: Pages 180–202.
Sat 8/31 – Mon 9/2 Labor Day  —  HCC Closed
  9/4   Using WireShark (capture, filtering, analyzing).  Packet capture, TCPdump, promiscuous mode, SPAN (mirror) ports on a switch, using and placing TAPS, Network Monitoring Stations (NMS), privacy concerns (full content capture, header-only capture).
Readings:  TBD
Project #1 (Install) due 9/4
  9/9     9/11   Ethernet networking: Hardware, addressing, CSMA/CD.  Packet collisions, runts, and the jam signal.  Switched Ethernet.  Ethernet framing and Frame types, MAC, LLC, and SNAP headers.  VLAN tagging, giant frames.  IEEE 802 standards. 
Data Transmission Issues:  Point-to-point (simplex, half duplex, and full duplex), point-to-multipoint (broadcast, multicast), anycast.  Capacity (throughput and bandwidth).  Trouble-shooting data link problems (EMI/RFI, attenuation, latency, Crosstalk and Alien crosstalk).  Using ethtool.  Overview of physical Layer concepts and terminology.
Readings:  Hunt: Chapters 4, 5.  Frisch: Pages 180–202.
  9/16     9/18   TCP/IP details: protocols (TCP, TCP hand-shaking, UDP, ICMP, IP), port numbers, sockets.  Inetd, xinetd, and systemd sockets.
ARP, RARP/BOOTP/DHCP, cabling issues.  Link Aggregation (A.k.a. Bonding, IP Multipath, EtherChannel, ...).  Other protocols brief overview: NetBIOS/NetBEUI, ATM, WAN technologies (T1, OC-#, PPP), VPN, VOIP, IPv6, cell, Wi-Fi (802.11 wireless), RPC.
Readings:  Hunt: Pages 43-44, 48, 76-83, 150-169, 266-267.  On-line TCP/IP concepts resources
  9/23   Common network design.  Understanding ROINATIPv4 and IPv6 addressing and binary numbers.  Networking documentation.  Configuring client DHCP (and zeroconf).  Using static IP configuration (for servers).  Configuring the Name Service Switch (nsswitch.conf).
Readings:  Hunt: Chapter 2, pages 87-88, 134-150.  Smith: Chapter 26, on-line binary number, addressing, and IPv6 resources
Project #2 (Static IP) due 9/23
  9/25    Exam 1
  9/30     10/2   Routing overview: static versus dynamic routing, routing versus routed protocols, distance vector versus link state, RIP, OSPF, ...  BGP routing in the Internet.  NAT/SNAT/DNAT/IPMasquerade.  Configuring Linux for routing.  Bridging overview, VLANs, Linux bridging configuration.  Load Balancing.
Readings:  Hunt: Chapters 7, 12.  Smith: Chapters 22 (pp. 599–616, 624–626), 23, 24 (pp. 653–659), 25,  routing on-line resources
10/7   10/9 The domain name system (DNS) and BIND.  Configuring caching, primary, and secondary DNS servers.
Readings:  Hunt: pages 51-61, chapter 8.  Smith: Chapter 18.  Frisch: Pages 414–452.  on-line DNS resources
Project #3 (Register DNS) due 10/9
10/14   10/16   Remote Access:  Terminal services (and RAS, NAS, XDMCP), remote consoles (KVM), RDP (and rdesktop, PC Anywhere), remote user authentication (RADIUS, TACACS+), and SSH (host keys and the known_hosts file, using keys instead of passwords, key caching and key-agents).  VPNs (IPsec).  VNC, VNC security.  PPPPAP and CHAP, chat.
Readings:  Hunt: Pages 399–402, 148–169, chapter 13.  Smith: Chapters 14, 26, pages 51–62, chapters 22 (pp. 616–623), 24 (pp. 641–653).  Frisch: Pages 484–500
Project #4 (DNS) due 10/16
  10/21     10/23   Trouble-shooting tools and techniques.  Monitoring the network (NIDS, MRTG, SNMP and RMON).
Readings:  Hunt: Pages 399–402, 148–169, chapter 13.  Smith: Chapters 14, 26, pages 51–62, chapters 22 (pp. 616–623), 24 (pp. 641–653).  Frisch: Pages 484–500, SNMP and system monitoring on-line resources
  10/19 (Fri.) College Day  —  HCC Closed to Students
  10/28   Review
  10/31     Exam 2
  11/4   Configure an LDAP server.  (Configure hosts to use LDAP instead of /etc/passwd.)
Readings:  Frisch: Pages 313–328, on-line LDAP Resources
11/6 Configure and manage network file sharing services: NFS.
Readings:  Hunt: Pages 233-252, 259-267.  Smith: Chapters 7, 8.  Frisch: Chapter 10 (pp. 694–706), on-line NFS resources
Sat 11/9 – Mon 11/11 Veterans' Day observed  —  HCC Closed
11/13 Configure and manage network file sharing services: Samba.
Readings:  Hunt: Pages 233-252, 259-267.  Smith: Chapters 7, 8.  Frisch: Chapter 10 (pp. 694–706), Using Samba, on-line Samba resources
Project #6 (LDAP) due 11/13
  11/18   Wi-Fi overview and configuration.
Readings:  Wi-Fi on-line resources
11/20   Kerberos overview.
Readings:  Hunt: Chapter 12.  Smith: Chapter 6,  Kerberos tutorial
  11/25     11/27   Email services: mail service, POP/IMAP.  Controlling spam and viruses.  User authentication and security.  Managing mailing lists.  Web mail service (using Apache and Squirrelmail).
Readings:  Hunt: Chapters 9, 11.  Smith: Chapters 14, 20.  email on-line resources
Project #7 (NFS and SMB Shares) due 11/27
Thu 11/28 – Sun 12/1 Thanksgiving Holiday  —  HCC Closed
  12/2   Setup a DHCP server.  Configure an anonymous FTP server.  NAS/SAN.
Readings:  Hunt: Pages 272-278, 399-402 Smith: Chapters 5, 13, 17, 21 on-line vsftp and anonymous FTP resourceson-line SAN, NAS, and AoE resources
  12/4   (Time permitting: Clusters and Grids.  Network backups.  Advanced Linux routing, traffic shaping, and queueing.  VoIP.)
Readings:  Hunt: Pages 61, 268-272.
  12/9    
Project #8 (Email Service) due 12/10

Listing of Course Resources
Resources
System Administrator Tasks Some of the common tasks required of system administrators.     LVM Guide A tutorial for Logical Volume Management (see also Sun's Volume Management Guide)
Post Install Task List Lists and briefly describes many post install tasks     Network Standards Networking Standards and organizations overview
Soft Skills Discusses certifications, job interviewing tips, and required non-technical skills needed to find and keep a job        
ICANN Home Internet Corporation for Assigned Names and Numbers     IANA home Internet Assigned Numbers Authority
(Assigned protocol, AS numbers, port numbers, TLDs, etc.)
SI prefixes Shows standard numeric prefixes     Network+ certification A CompTIA program (See also Network+ exam objectives (PDF))
RFC number search plugin Save this XML file in the Firefox “searchplugins” directory     RFC keyword search plugin Save this XML file in the Firefox “searchplugins” directory
Network Topologies (PNG) A graphic showing several common network topologies        
WireShark.org WireShark (formerly “Ethereal”) home     Wireshark how-to (YouTube video) A short basic Wireshark tutorial  (See also this Wireshark tutorial)
IEEE Registration Authority Information and tutorials on Ethernet standards from standards.ieee.org     IEEE 802 series of standards Free (PDF) downloads of Ethernet (LLC and MAC), 802.11 (wireless), and other standards.
Networking Study Guide Lists and briefly describes networking terms and concepts.     OSI Reference Model A GIF illustration of the OSI Ref. Model
PacketLife.net Useful reference guides and other info for networking     NOC Tour Historical AT&T NOC tour (YouTube video)  (See also wallboard pic, and modern NOC wallboards and dashboards)
Binary number system (Wikipedia) Details on the binary number system     Binary Number Tutorial A good tutorial on binary numbers
Network address calculator Easily calculate subnet masks and more  (See also www.calculator.net)     RFC Archive RFCs and a search engine
IP Address Exhaustion Charts showing IP addresses allocated over time     RFC-5735 Special and reserved IPv4 addresses (previously RFC-3330)
Internet undersea cable map (JPEG) Graphic of the undersea cables that connect the Internet  (See also this updated submarine cable map)     Internet Exchange Points List A list of IXPs (a.k.a. EPs) from ixpdb.net.  See also Euro-IX (European Internet Exchange Association), with a tutorial at www.euro-ix.net/en/forixps/, and the IXP summary and list at PCH.net
TCP/IP Guide Free tutorial for TCP/IP     Cisco TCP/IP tutorial A good video tutorial on networking and TCP/IP  (See also Cisco Troubleshooting TCP/IP Guide)
Supernetting tutorial Short tutorial on CIDR, supernetting     RFC-1812 Official standard for Internet routing and related concepts
ZeroConf.org IPv4 automatic link-local addressing, originating in AppleTalk, later renamed “Rendezvous” and now “Bonjour”     Working with IP Addresses Cisco Tutorial for IP addressing and for binary numbers
Port Numbers, Sockets, and RPC Some lecture notes summarizing these topics     NetworkManager Documentation for NetworkManager  (See also Fedora NetworkManager Documentation)
awstats for wpollock.com - September 2017 PDF Apache log analyzer and visualizer  (See also awstats for wpollock.com - 2016 PDF)     webalizer for wpollock.com - 2006–2007 Another Apache log analyzer and visualizer
RFC-4291 IPv6 Addressing     wiki.go6.net IPv6 Knowledge Center
IPv6.org IPv6 information and links     IPv6 @TutoriualsPoint.com See also Cisco IPv6 tutorial
NIST Special Publication 800-119 IPv6 Secure Deployment Guide (PDF), includes a readable overview     test-ipv6.com Checks for IPv6 connectivity  (See also kame.net and look for the dancing turtle)
Linux IPv6 How-To Linux guide to IPv6     Solaris IPv6 Administration Guide Sun's “Big Admin” guide on IPv6
freenet6 One of several IPv6 tunnel providers     IPv6 Web Tools Tools to test your IPv6 setup
About ping The real story of the ping utility     Network equipment pricing info On-line resources for Cisco equipment, cables, and more
www.webopedia.com On-line technical encyclopedia (Search for 802 for instance) (Also see Wikipedia.org)     /etc/services file (IANA.org) Current list of well-known port numbers
WAN Technology Charts Tables of T-carrier, DSL, and SONET characteristics     Internet Live Stats Internet statistics  (See also Internet Traffic Report/ and this Digital Attack Map)
Internet Mapping Project View pictures of the Internet (12/98 Wired pic, Selected snap-shots; see also IPv4 changes in Yugoslavia during the 1999 war)     Distance Vector Routing (GIF) Illustration of Dist. Vect routing, from Routing TCP/IP Volume I (CCIE Professional Development), by Jeff Doyle, ©1998 by Cisco Press. From posted sample chapter, figure 4.3
Syria goes off-line (YouTube video) A video showing the Internet BGP4 routing tables for Syria, as they vanish in December 2012; the numbers shown are AS numbers; The routes flash when removed completely  (See the full story at Ars Technica)     Routing without tears: Bridging without danger (PDF) Radia Perlman's slideshow presentation of Rbridging (and includes routing and bridging basic concepts)
NAT Overview Description of IP masquerade (or NAT)     ifcfg-eth0 A sample config file for static IP setup for Fedora
NAT Overview Description of IP masquerade (or NAT)  (See also computer.howstuffworks.com/nat.htm     ifcfg-eth0 A sample config file for static IP setup for Fedora
samwho.dev/load-balancing/ Load Balancing Overview        
TCPFlow A TCP data flow recorder     suidDemo.tgz Shows how suid can be used to control access to files
docwiki.cisco.com/.../SNMP A detailed tutorial on SNMP versions 1 and 2, but not 3  (See also Securing SNMP)     SNMP Setup and Demos Shows how to configure SNMP on Linux
What is SNMP A brief but good tutorial from www.ManageEngine.com     net-snmp Tutorials Tutorials for the net-SNMP software (used on Linux), including how to use version 3 security features
MIB Browser (zip) A Java-based GUI app that allows one to explore MIBs (from ireasoning.com)  (See also oid-info.com)     MIBbrowser.vbs For Windows, put this in the MIB Browser's “.../bin” folder, and make a short-cut to it for easy launching
JetDirect MIB SNMP MIB for the JetDirect print server     LaserJet 8100 MIB SNMP MIB for the HP laser printer in the classroom
ASN.1 Decoder ASN.1 JavaScript app that decodes Base-64  (from lapo.it/asn1js/)     Remote (network) Monitoring An RMON tutorial from Cisco
SNMP MIB SNMPv2 MIB for Cisco MPLS Router     System Monitoring Tutorial A brief overview of the basics
Xymon Open source (SNMP-based) multi-server monitoring system     Syslog, Log File Rotation A tutorial including examples
IP Traffic Management Draft Lecture Notes     DNS Resources Sample DNS configuration files plus other resources
Linux IP Networking From sysresccd.org (the home of the System Rescue CD Linux distro), these articles describe using the new ip command and some advanced routing (including load-balancing)     Advanced Routing How-to Describes advanced routing for Linux (from tldp.org)
LDAP Overview Draft Lecture Notes     OpenLDAP.org Software and documentation for OpenLDAP
LDAP files Sample (Working!) LDIF files and OpenLDAP configuration files        
Wi-Fi Overview Describes 802.11 standards, history, security, and configuration     Moron's Guide to Kerberos Kerberos overview.  See also this tutorial from Kerberos.org
DHCP Server Configuration Lecture notes on DHCP     Anonymous FTP Site Setup Shows how to setup and configure vsfptd
httpd configuration Sample httpd (Apache) configuration files.     httpd docs The Apache web server documentation (version 2.4)
Web server market share NetCraft report showing market share of popular web servers     nginx A popular alternative to Apache
NIS and NIS+ Using NIS and NIS+     Clusters and Grids Unix and Linux cluster and Grid computing
NAS, SAN, and AoE Centralized disk storage draft lecture notes     Storage Basics (including SAN and NAS) (PDF) Enterprise storage concepts from SNIA.org
File Sharing Overview File and print sharing using NFS and CIFS (SMB)     Email Service Resources Sample DNS, SpamAssassin, ClamAV, Amavis, SASL, Postfix, and IMAP/POP configuration files, plus other resources
NFS Demo Setup and use of NFS     Samba Demo A log of commands needed for setup and use of a minimal Samba server
Public-key encryption Tutorial on security and public-key encryption (from the old Netscape.com's DevEdge site)     Public key encryption tutorial Public key encryption tutorial and other security tutorial links from Webopedia.com

[Valid RSS]

RSS iconXML iconRSS feed for this page

What is RSS?