MONOGRAPH ON A computer network for afghan high school شبکه کمپیوتری برای لیسه عالی افغان BY Irshad ahmad mehrabi 21-RB-200-375 In partial fulfillment of the requirements for the award of the degree of BACHELOR OF INFORMATION TECHNOLOGY BIT TO RANA University MONOGRAPH ON A computer network for afghan high school شبکه کمپیوتری برای لېسه عالی افغان In partial fulfillment of the requirements for the award of the degree of BACHELOR OF INFORMATION TECHNOLOGY )BIT( TO RANA University PROJECT APPROVAL SHEET The undersigned certify that they have read the following Project Report and are satisfied with the overall exam performance and recommend the project to the Department of Computer Science for acceptance. Title: a computer network for afghan high school Prepared by: MR. irshad ahmad mehrabi Reg No: 21-RB-200-375 Recommended by: Mr. Sayed Hassan Sabit Vice Dean & Project Coordinator Project Coordinator: Mr._________________________________ Name &Signature Dean of BCS Faculty: Mr._________________________________ Name & Signature Vice Chancellor Academic Mr._________________________________ Name & Signature RANA University Management Verification & Stamp: Date. _________________________________ PROJECT EVALUATION SHEET (Decision of the Monograph Evaluation Committee) Assessment Criteria Member 1 Problem Definition: Relevant Yes No clearly phrased Yes No Testable Yes No Research Design: Theoretical Background Yes No Appropriate Research Method Yes No Research Result: Description Analysis Analysis, Interpretation and Conclusion: Clear Yes No Further Comments (Allocate Marks out of 25%) Name of the Committee Member: Sign: Member 2 Problem Definition: Relevant Yes No clearly phrased Yes No Testable Yes No Research Design: Theoretical Background Yes No Appropriate Research Method Yes No Research Result: Description Analysis Analysis, Interpretation and Conclusion: Clear Yes No Further Comments (Allocate Marks out of 25%) Member 3 Problem Definition: Relevant Yes No clearly phrased Yes No Testable Yes No Research Design: Theoretical Background Yes No Appropriate Research Method Yes No Research Result: Description Analysis Analysis, Interpretation and Conclusion: Clear Yes No Further Comments (Allocate Marks out of 25%) Name of the Committee Member: Sign: Member 4 Problem Definition: Relevant Yes No clearly phrased Yes No Testable Yes No Research Design: Theoretical Background Yes No Appropriate Research Method Yes No Research Result: Description Analysis Analysis, Interpretation and Conclusion: Clear Yes No Further Comments (Allocate Marks out of 25%) Name of the Committee Member: Sign: DECLARATION I hereby confess that, the monograph “a computer network for afghan high school ” of the requirements for the Degree of Bachelor of Information Technology (BIT) to RANA University related to my work therefore not submitted for any other degree, diploma fellowship or similar title or prize. Name: irshad ahmad mehrabi Signature: Date: FACULTY CERTIFICATE This is to certify that the project / Monograph titled “a computer network for afghan high school” Submitted in partial fulfillment of the requirements for the degree of “Bachelor of Information Technology to RANA University, Baraki Square, Kabul – Afghanistan is carried out By Mr. irshad ahmad mehrabi Under my direct supervision, guidance and that no part of this report has been submitted for the award of any other degree, diploma, fellowship or other similar titles or prize and that work has not been published in any scientific or popular journals or magazines. FACULTY PARTICULARS DEPARTMENT IN CHARGE Name: Mr. Sayed Hassan Sabit Name: Mr. Abdul Ghafar Omarkhel Qualification: BSC in Mathematic Qualification: M.S.C Computer Science Designation: Vice Dean & Project coordinator Designation: Dean of Faculty ID No: RU-02-101 ID No: RU-02-014 Signature: ACKNOWLEDGEMENT All praises and thanks to Almighty Allah, the source of knowledge and wisdom to mankind, who conferred me with power of mid and capability to take this material contribution to already existing knowledge. All respect and love to him who is an everlasting model of guidance for humanity as a whole. I would like to express the deepest appreciation to the committee chair Mohammad Ebrahim Zain Safi the Chancellor of Rana University, who encouraged me in writing my monograph on “a computer network for afghan high school ” with the attitude and the substance of a genius, he continually and convincingly conveyed a spirit of adventure accordingly. I wish to thank my project supervisor, Mr. mohammad qasim safi whose guidance made my project possible. His encouragement and wisdom made my efforts worthwhile. My heartfelt gratitude also goes to Dean of CS Faculty, Mr. Abdul Ghafar Omarkhel for his insight and completion of my project. It is with great honor that I would also like to thank my family, whose names I have not mentioned, how yet supported and helped me in one way or the other. Finally, I just want to thank you for the reading of my thesis which it takes time. Signature Irshad ahmad mehrabi Reg#: 21-RB-200-375 BIT (Bachelor of Information Technology) CHAPTER 1 : introduction Introduction This network has been designed for the Afghan School. The Afghan School, located in the Khushal Khan Mina area of Kabul, provides educational services to the country’s citizens. The school has two branches: one for male students and the other for female students. The Afghan School consists of two buildings, which house the administration, headmaster's office, finance department, library, and computer lab. The school aims to establish a computer network for these two buildings to ensure that its operations are carried out in an organized manner and efficiently, saving time. I have designed this network for the school to ensure it has excellent internet connectivity and can carry out its tasks with complete security and effectiveness. I am trying to build this network with low cost and good quality, while ensuring that it has strong security so that no issues arise for the Afghan school staff. Chapter 2 : Existing and Proposed Syste Existing system This school have not a computer network or internet is not exist Because we want to create a computer network for this school to get his work faster. The Afghan school did not have a computer network and faced many problems. Therefore, the principal requested that a network be set up for our school. Inadequate Existing Network Problem: In many organizations, the existing network may not be compatible with current technology. This can negatively impact network speed, scalability, and security. Increase in Users Problem: The growing number of users can pose a significant challenge for the network’s capacity and capabilities. Security Vulnerabilities Problem: Network security threats such as hacking attacks, internal threats, and data breaches can cause serious issues for the organization. 4 -Inefficient Data Exchange Problem: If the network does not facilitate efficient data exchange, it can lead to performance degradation and latency issues. I want to create an advanced computer network for this school to solve their problems. Inefficient Data Exchange Problem: If the network does not facilitate efficient data exchange, it can lead to performance degradation and latency issues. Proposed System I think about this project very important for this school manager I trying to make this project successful so that the school principal can manage effectively and easily guide all the staff. I believe this project is very important for the principal of the Afghan school. I will make every effort to complete this project successfully so that the principal can easily manage the school and quickly accomplish both his own tasks and those of the staff. Data Exchange Speed and Volume Solution: By implementing computer networks, the speed of data exchange can be increased. Networks can enable data transfer with higher bandwidth and lower latency, enhancing employee work speed and improving operational efficiency. Network Security Solution: Building computer networks can ensure security measures like firewalls, encryption, VPNs, and traffic monitoring, which help safeguard organizational data and prevent internal and external attacks. User Growth and Network Expansion Solution: Computer network design can offer scalability. To reduce network load, high-capacity hardware such as switches, routers, and servers should be used. Additionally, for horizontal network expansion, VLANs or Load Balancing can be implemented. Technological Advancements and Coordination Solution: The design of computer networks should be aligned with the latest technologies. Implementing wireless technologies (Wi-Fi 6, 5G), cloud services (Cloud Computing), and DNS (domain name system) for horizontal network expansion can help integrate new technologies into the organization's network. Configuration to DHCP Chapter 3 : logical design Logical design In this network, there are two main routers, two switches 24port 2960 , one server, two access points, six laptop computers, twenty-six desktop computers, ten printers, and four wireless phones. A structured network has been designed. In this network, I have used four protocols that play a significant role in resolving network issues: DHCP: I have used DHCP so that all clients can automatically obtain an IP address in a short amount of time, ensuring that users do not encounter any issues. HSRP: HSRP has been implemented in this network to ensure that if one router encounters a problem, the second router will automatically take over and provide internet access to the switches. DNS: I have used DNS in this network to translate user names to IP addresses for all users. Port Security: I have implemented Port Security to safeguard the network from any security issues and prevent any unauthorized access or potential security threats. Chapter 4 : Physical design Chapter 5 : Implementation, Configuration and Testing A brief information about the network of computer A computer network is a system of multiple computers or other electronic devices that are connected in a specific way to exchange data and share resources. Computer networks are created using different types such as LAN (Local Area Network), WAN (Wide Area Network), and MAN (Metropolitan Area Network). Benefits of Computer Networks: 1. Data Exchange: Through the network, data and information can be easily exchanged between computers. 2. Resource Sharing: Computers can share devices like printers, disks, and other hardware resources. 3. Cost Reduction: Networks help reduce costs by enabling shared use of resources among a group of computers. 4. Data Storage: Data can be stored and managed centrally via the network. 5. Scalability: Networks can be easily expanded by adding new devices or computers. Overall, computer networks are valuable tools for facilitating information exchange, reducing costs, and enabling scalability. Router A router is a networking device that forwards data packets between computer networks. It acts as a traffic director, determining the best path for data to travel across different networks. Routers connect local networks, such as a home or office network, to larger networks like the internet. Here’s a comprehensive breakdown of routers: Definition and Function A router is a device that routes data from one network to another by selecting the most efficient path. It connects multiple networks and determines the destination for data, ensuring it reaches the right place. Routers also manage traffic within a local area network (LAN) and between LANs and wide area networks (WANs), including the internet. Types of Routers There are several types of routers based on their purpose: Home Routers (Residential Routers): These are used in homes or small offices. They typically combine a router, modem, and sometimes wireless access point (WAP) into a single device. Enterprise Routers These are used in large-scale business networks and have higher performance and additional security features. Core Routers: Used by internet service providers (ISPs) and large enterprises, core routers direct traffic within the backbone of the internet. Edge Routers: Positioned at the edge of a network, they connect the internal network to external networks like the internet. Wireless Routers: These routers provide both wired and wireless connections to devices, allowing for Wi-Fi connectivity. Key Functions Routing: Routers analyze IP addresses in data packets and forward them to the next network hop based on routing tables. Network Address Translation (NAT): Routers can translate private IP addresses (used within a home network) to public IP addresses (used on the internet) for outgoing traffic. Firewall: Many routers come with built-in firewalls that protect the network from unauthorized access and threats. Quality of Service (QoS): Routers can prioritize certain types of traffic (e.g., video streaming, VoIP) to ensure performance. Dynamic Host Configuration Protocol (DHCP): Routers can assign IP addresses to devices on the network automatically. How Routers Work Routers work by examining the destination IP address of incoming data packets, consulting their routing tables, and forwarding the data to the appropriate next hop (another router or the destination device). A router uses a combination of: Routing tables: Databases containing information on how to reach different network destinations. Routing protocols: Protocols like OSPF (Open Shortest Path First), BGP (Border Gateway Protocol), and RIP (Routing Information Protocol) help routers communicate with each other to dynamically learn the best routes. Components of a Router Processor (CPU): Executes the router’s software and performs routing decisions. Memory (RAM & ROM): RAM stores routing tables and temporary data, while ROM stores the firmware (software) used by the router. Ports: Routers have multiple ports, including: WAN port: Connects to the external network (like the internet). LAN ports: Connect to local devices within the network via Ethernet cables. Wi-Fi antenna (for wireless routers): Allows devices to connect wirelessly to the network. Operating System (Router OS): Like any computer, routers run an operating system to manage their functions. Wireless Routers Wireless routers are commonly used in homes and offices to provide Wi-Fi access. They have integrated radio transmitters that allow devices to connect to the network without cables. These routers operate using wireless standards like: Wi-Fi 4 (802.11n): Older standard providing decent speeds. Wi-Fi 5 (802.11ac): Faster speeds and better efficiency, often used for HD video streaming and gaming. Wi-Fi 6 (802.11ax): Latest standard, offering even higher speeds, better handling of multiple devices, and improved efficiency in congested environments. Security Features Routers come with a range of security features to protect data and prevent unauthorized access, including: Encryption: WPA2/WPA3 encryption for Wi-Fi networks ensures that wireless data is secure. Firewalls: Software-based firewalls protect against incoming malicious traffic. VPN Support: Many routers support Virtual Private Networks (VPNs) for secure remote access. Access Control Lists (ACLs): Routers can restrict or allow traffic based on certain criteria like IP addresses or protocols. Router Setup To set up a router, typically you: Connect the router to the modem (if it's a separate device) using an Ethernet cable. Access the router’s configuration page through a web browser by entering the router’s default IP address (usually something like 192.168.1.1). Configure Wi-Fi settings, such as SSID (network name) and password. Configure security features, NAT, DHCP, and any other required network settings. Common Router Brands Cisco: Well-known for enterprise routers. Netgear: Popular for home routers and Wi-Fi systems. TP-Link: Offers a variety of routers, including budget-friendly options. Linksys: Known for home routers with high-speed capabilities. ASUS: Offers gaming routers and high-performance wireless routers. Troubleshooting Common Router Issues Connection Drops: Ensure the router firmware is updated, check cables, or reset the router. Slow Speed: Restart the router, change the Wi-Fi channel, or check for interference from other devices. No Internet: Check the modem and ensure it’s functioning properly. Verify that the router’s connection to the internet is intact. Future Trends in Routers Wi-Fi 6 and 6E adoption: As more devices use wireless technology, Wi-Fi 6 and 6E will become more widespread due to their improved speed and efficiency. Mesh Networks: Mesh Wi-Fi systems are becoming popular to provide seamless coverage across large areas by using multiple nodes. 5G Routers: As 5G networks roll out, routers designed to use 5G connectivity will become more common, offering faster speeds and lower latency. In summary, routers are critical devices that enable communication between different networks, manage data traffic, and enhance connectivity in homes, businesses, and on the internet. They also provide robust security and performance optimization tools to ensure efficient and safe data transfer. switch A switch is a networking device that connects devices within a local area network (LAN) and facilitates communication between them. It operates at the data link layer (Layer 2) of the OSI model but can also function at Layer 3 (network layer) when configured as a Layer 3 switch (which has routing capabilities). Switches are essential components in modern networking for managing data traffic efficiently. Definition and Function A network switch is used to receive, process, and forward data to the destination device on a local area network (LAN). Unlike a hub, which broadcasts incoming data to all devices connected to it, a switch directs the data only to the specific device that needs it, based on the MAC (Media Access Control) address of the destination device. This helps reduce unnecessary traffic and improves the efficiency of data transmission. Types of Switches Switches come in various types based on features, size, and use cases. The main categories are: Unmanaged Switches: These switches are simple, plug-and-play devices that require no configuration. They are typically used in small networks or home environments where basic connectivity is needed. Managed Switches: These offer advanced features such as VLAN support, network monitoring, traffic management, and security controls. Managed switches are commonly used in enterprise networks. Layer 2 Switches: Most switches operate at Layer 2 of the OSI model, which handles Ethernet frames and MAC addresses. They are responsible for forwarding traffic based on MAC addresses. Layer 3 Switches (Multilayer Switches): These switches have the capability to route traffic between different VLANs, combining the functionality of a router and a switch. They operate at both Layer 2 and Layer 3. PoE (Power over Ethernet) Switches: These switches deliver both power and data over a single Ethernet cable. They are often used for devices like IP cameras, VoIP phones, and wireless access points. Stackable Switches: These switches can be physically stacked to function as a single unit, simplifying management and increasing port capacity. They are used in environments where scalability is important. Smart Switches: A hybrid between unmanaged and managed switches, smart switches offer some level of management features such as VLAN support and simple network monitoring but lack the extensive customization of fully managed switches. How Switches Work Switches forward data between devices based on MAC addresses. Here’s how it works: Learning: When a switch receives a data packet, it checks the source MAC address in the frame and learns which device (or port) the packet came from. The switch stores this MAC address and associates it with the corresponding port. Forwarding: The switch then looks at the destination MAC address of the packet and checks its MAC address table (also called a forwarding table). If it finds the address, it forwards the packet only to the port associated with that MAC address. Flooding: If the destination MAC address is not found in the table, the switch will broadcast the packet to all other ports (except the one it came from) to find the device. Aging: Over time, the MAC addresses stored in the table can "age out" (expire). This means that the switch periodically removes entries that have not been used for a certain amount of time. Components of a Switch A typical network switch consists of the following components: Ports: These are the physical interfaces through which devices connect to the switch. They are usually Ethernet ports (RJ45) but may also include fiber-optic ports in high-end switches. MAC Address Table: The switch maintains a MAC address table to map MAC addresses to the ports they are associated with. Switching Fabric: This is the internal architecture that connects the ports and facilitates the fast transfer of data between them. Management Interface (for managed switches): This interface allows network administrators to configure and monitor the switch. It could be a web-based interface, CLI (Command-Line Interface), or SNMP (Simple Network Management Protocol). Switching Methods Switches use different methods for forwarding data frames, and these include: Store and Forward: The switch receives the entire frame, stores it, and checks for errors before forwarding it to the destination. Cut-Through: The switch begins forwarding the frame as soon as it reads the destination MAC address, without waiting for the full frame. This method is faster but less error-proof than store and forward. Fragment-Free: This method is a compromise between store and forward and cut-through. It checks the first 64 bytes of the frame to detect any errors before forwarding. Key Features of a Switch Switches offer a range of features that help improve network performance and management: VLAN Support: Virtual LANs (VLANs) allow for logical segmentation of a network into smaller broadcast domains. Managed switches support VLANs, which can isolate traffic, increase security, and improve network performance. Port Security: Managed switches allow administrators to configure port security settings to restrict which devices can connect to specific ports based on their MAC addresses. Link Aggregation: This allows multiple physical links between switches to be combined into one logical connection, increasing bandwidth and providing redundancy. Quality of Service (QoS): Switches can prioritize certain types of traffic (e.g., voice, video) to ensure better performance for critical applications. Spanning Tree Protocol (STP): This protocol helps prevent network loops by ensuring that there is only one active path between any two switches, improving network stability and redundancy. Multicast Support: Switches can support multicast communication, allowing data to be sent to multiple devices at once without flooding the entire network. Switch Configuration Switch configuration varies based on whether the switch is unmanaged or managed: Unmanaged Switches: Typically require no configuration. You simply plug in the devices, and the switch will automatically handle the data forwarding. Managed Switches: Requires manual configuration. You can configure the switch through: Web Interface: Most modern managed switches have a user-friendly web-based interface. Command-Line Interface (CLI): Some advanced users prefer to configure switches through a CLI, especially when working with large-scale networks. SNMP: Simple Network Management Protocol allows centralized management and monitoring of multiple network devices. Common Uses of Switches Home Networks: Switches are used in homes where multiple devices (computers, printers, and smart devices) need to be connected to a single network. Business Networks: In offices, switches help connect computers, servers, printers, and other devices, ensuring that the network operates efficiently and securely. Data Centers: High-performance switches are used to interconnect servers and storage devices within data centers to facilitate high-speed data transfer. ISP Networks: Service providers use high-performance switches to manage traffic in large-scale networks, connecting millions of end users. Switch vs. Hub A hub is a simpler device than a switch. While a hub broadcasts data to all connected devices, a switch only sends data to the correct device based on MAC addresses. This makes switches more efficient and scalable compared to hubs. Security Features Access Control Lists (ACLs): Managed switches allow the configuration of ACLs to filter traffic based on IP addresses, ports, or other criteria. Port-Based Authentication: Some switches support 802.1X authentication, where devices must authenticate before they can connect to the network. Network Segmentation: Using VLANs and private VLANs, switches can isolate sensitive traffic from the rest of the network for security purposes. Troubleshooting Common Switch Issues Port Flapping: This occurs when a port continuously goes up and down. It could be due to hardware failure or incorrect configuration. Network Loops: If two switches are connected in a way that creates a loop, it can cause broadcast storms. STP (Spanning Tree Protocol) helps prevent this. Slow Network Performance: This could be due to congestion, hardware issues, or improper configuration of VLANs, QoS, or other features. Popular Switch Manufacturers Cisco: Known for high-quality enterprise-level switches with robust features. Juniper Networks: Offers high-performance switches for both enterprise and data center environments. Netgear: Provides a variety of switches, from home networking devices to business-grade switches. TP-Link: Known for affordable and reliable switches, often used in small businesses or home networks. Hewlett Packard Enterprise (HPE): Offers managed switches for large-scale enterprises and data centers. Conclusion A switch is a fundamental device in modern networks, providing efficient communication between devices and enabling a more organized, secure, and high-performance network. Whether in home environments or large-scale enterprise networks, switches are critical for managing network traffic, optimizing performance, and ensuring security. Understanding the different types of switches, their functions, and features can help you choose the right one for your networking needs. server A server is a specialized computer or device in a network that provides services, resources, or data to other computers (clients). Servers play a central role in a variety of digital services and are crucial to the infrastructure of the internet, business networks, and other computing environments. Here’s a comprehensive overview of servers, including their functions, types, components, and uses: Definition and Function A server is a device or program that manages access to a centralized resource or service in a network. Servers typically handle requests from client devices, process data, store and retrieve information, and provide various functionalities such as email, file storage, web hosting, and more. Server Software: Servers often run specialized software to manage the services they provide. For example, a web server runs web server software (e.g., Apache, Nginx), a database server runs database management systems (e.g., MySQL, PostgreSQL), and a file server manages file storage (e.g., FTP server). Client-Server Model: In this model, clients are devices that make requests (such as browsers or applications), and the server responds with data or services. Types of Servers There are various types of servers, depending on the services they offer: Web Server A web server hosts websites and serves web pages to users who request them via web browsers. It processes HTTP requests and serves HTML, images, videos, and other resources. Examples of web server software: Apache HTTP Server, Nginx, Microsoft IIS. File Server A file server stores and manages files for users in a network. It allows users to access, modify, and store files centrally, often using protocols like SMB (Server Message Block), FTP (File Transfer Protocol), or NFS (Network File System). Examples: Windows File Server, Linux-based file servers. Database Server A database server provides database services to other devices or applications. It stores, retrieves, and manages data in databases. These servers use Database Management Systems (DBMS) like MySQL, SQL Server, or Oracle. Examples: MySQL Server, Microsoft SQL Server, Oracle Database. . Mail Server A mail server handles the sending, receiving, and storage of emails. It uses protocols such as SMTP (Simple Mail Transfer Protocol), IMAP (Internet Message Access Protocol), or POP3 (Post Office Protocol). Examples: Microsoft Exchange, Postfix, Sendmail. DNS Server A Domain Name System (DNS) server translates domain names (like www.example.com) into IP addresses, allowing clients to reach websites by using human-readable addresses rather than numeric IP addresses. Examples: BIND, Microsoft DNS Server. Application Server An application server provides an environment for running applications. It hosts software that performs specific business or organizational functions, such as customer relationship management (CRM), enterprise resource planning (ERP), or web applications. Examples: JBoss, GlassFish, Microsoft .NET Framework. . Proxy Server A proxy server acts as an intermediary between client devices and the internet, providing additional security, privacy, and performance by caching data, filtering requests, or masking the client's IP address. Examples: Squid, HAProxy, Nginx. . FTP Server An FTP server allows the transfer of files between systems over the FTP protocol. It’s often used for storing large files or sharing files between different systems. Examples: FileZilla Server, vsftpd (Very Secure FTP Daemon). . Game Server A game server is used to host multiplayer online games, allowing players to connect, interact, and play together in real-time. j Examples: Minecraft Server, Counter-Strike Server. . Virtual Server A virtual server is a server that is created and managed through virtualization software, allowing multiple virtual servers to run on a single physical machine. Each virtual server functions as if it were a separate physical server. Examples: VMware ESXi, Microsoft Hyper-V, KVM. Server Hardware Servers are typically designed with specific hardware components to support the high demands of data processing, storage, and uptime requirements. Key components include: Processor (CPU): Servers use powerful processors designed for high performance and multi-threading to handle multiple requests simultaneously. Popular server CPUs are Intel Xeon, AMD EPYC. Memory (RAM): Servers often have large amounts of RAM to support fast processing and multitasking. The RAM size depends on the server's role, with high-performance databases and virtualized servers requiring more memory. Storage: Servers require reliable, large-capacity storage solutions. They typically use: Hard Disk Drives (HDD) for bulk storage. Solid-State Drives (SSD) for faster data access. RAID configurations for redundancy and improved data protection. Network Interface Cards (NICs): Servers have multiple network interfaces to handle high bandwidth and redundancy. For high-performance servers, 10GbE (10 Gigabit Ethernet) or higher NICs are used. Power Supply Units (PSUs): Servers have redundant PSUs to ensure reliability in case of power failure. Cooling Systems: Servers generate significant heat, so they require efficient cooling systems like fans and liquid cooling to maintain optimal operating temperatures. Server Operating Systems (OS) Servers run specialized operating systems optimized for their roles. Common server operating systems include: Linux-based OS: Ubuntu Server, CentOS, Red Hat Enterprise Linux (RHEL), and Debian are popular choices for web servers, database servers, and file servers due to their stability, security, and open-source nature. Windows Server OS: Microsoft Windows Server editions like Windows Server 2022, Windows Server 2019, and earlier versions are commonly used in enterprise environments for applications like file sharing, Active Directory, and web hosting (via IIS). UNIX-based OS: Systems like AIX (IBM), Solaris (Oracle), and HP-UX (Hewlett-Packard) are used in enterprise environments that require robust, scalable, and secure server operations. Virtualization Platforms: Virtualization technologies like VMware vSphere, Microsoft Hyper-V, and XenServer allow the deployment and management of virtual servers running on physical hardware. Server Roles and Use Cases Servers serve many critical roles across businesses, organizations, and the internet: Web Hosting: Servers host websites and web applications. Web servers, combined with database and application servers, manage and deliver dynamic and static content to users around the world. File Sharing: File servers store and manage files that are shared among users. They provide access control, data storage, backup, and retrieval services. Email Services: Mail servers handle the sending, receiving, and storage of emails. They ensure email reliability and functionality within an organization. Database Management: Database servers manage large datasets and offer data storage, retrieval, and manipulation capabilities. They are essential for running business applications, reporting systems, and customer databases. Cloud Computing: In cloud environments, servers are used to host virtual machines (VMs), containers, and applications. Cloud providers like Amazon Web Services (AWS), Microsoft Azure, and Google Cloud rely on server infrastructure to provide scalable and on-demand services. Gaming: Servers are widely used for online multiplayer games, ensuring real-time interactions among players. They host the game’s world, synchronize player actions, and maintain game state. Server Security Servers often contain sensitive data and need to be secured against various threats. Key server security practices include: Firewall Protection: Servers often use firewalls to filter incoming and outgoing traffic, ensuring that only authorized requests are allowed Encryption: Sensitive data stored on servers or transmitted over the network is often encrypted to prevent unauthorized access. Access Control: Servers implement strict user authentication and access control mechanisms, such as multi-factor authentication (MFA) and role-based access control (RBAC). Regular Patching and Updates: Server operating systems and software are regularly patched to fix vulnerabilities and prevent exploits. Backups: Servers perform regular backups to ensure that data can be recovered in case of failure, ransomware attacks, or other disasters. Server Virtualization Virtualization allows multiple virtual servers to run on a single physical machine. This optimizes resource use and offers benefits like: Efficient Resource Utilization: Multiple virtual machines (VMs) can be created on a single physical server, utilizing CPU, memory, and storage more efficiently. Isolation and Flexibility: VMs are isolated, so issues in one VM do not affect others. Virtual servers can also be easily moved or replicated across physical servers. Cost Savings: Virtualization reduces hardware costs by consolidating workloads onto fewer physical machines. Popular Server Manufacturers Servers are typically produced by specialized companies known for reliability and performance. Some of the top manufacturers include: Dell Technologies: Known for offering enterprise-grade rack servers, blade servers, and storage systems. Hewlett-Packard Enterprise (HPE): Provides a wide range of servers for different enterprise applications. IBM: Famous for its high-performance enterprise servers, including mainframes and powerful x86 systems. Lenovo: Offers a range of servers, including rack and tower models suitable for different business needs. Supermicro: Specializes in high-performance servers and server components, widely used for custom server configurations. Conclusion Servers are the backbone of modern networking, web hosting, cloud services, and enterprise IT infrastructure. They provide essential services like data storage, application hosting, communication, and more. With various types, operating systems, and configurations, servers are versatile and scalable to meet the growing needs of businesses and organizations across different industries. Understanding the role, components, and security measures associated with servers is crucial for maintaining a robust, efficient, and secure IT environment. DHCP (Dynamic Host Configuration Protocol) DHCP is a network management protocol used on IP networks. It enables devices (known as clients) to automatically receive IP addresses and other essential network configuration details from a DHCP server, making network management more efficient. How DHCP Works: DHCP works by assigning IP addresses dynamically to devices when they join a network, which saves network administrators from manually assigning static IPs. Here’s the step-by-step process: DHCP Discover: - When a device (client) joins the network, it sends out a DHCP Discover message to locate any available DHCP servers on the network. 2-DHCP Offer: - The DHCP server responds with a DHCP Offer message, which includes an available IP address, the subnet mask, the lease time (how long the IP address is valid), and other configuration information (such as the default gateway, DNS servers, etc.) . -DHCP Request: - The client then responds with a DHCP Request message to the server, indicating it wants to accept the offered IP address. . DHCP Acknowledgment - The DHCP server sends a DHCP Acknowledgment (ACK) message to the client, finalizing the IP address assignment and the lease time. components of DHCP - DHCP Server: This is the device that allocates and manages IP addresses and provides network configuration information. - DHCP Client: This is any device on the network (such as a computer, smartphone, or router) that requests an IP address from a DHCP server. -DHCP Lease: The period of time that an IP address is assigned to a client. After this period, the client must renew the lease or the IP address is returned to the pool of available addresses. - DHCP Scope: The range of IP addresses that the DHCP server can assign to clients. The main components of DHCP include: DHCP Server: DHCP Server is a server that holds IP Addresses and other information related to configuration. DHCP Client: It is a device that receives configuration information from the server. It can be a mobile, laptop, computer, or any other electronic device that requires a connection. DHCP Relay: DHCP relays basically work as a communication channel between DHCP Client and Server. IP Address Pool: It is the pool or container of IP Addresses possessed by the DHCP Server. It has a range of addresses that can be allocated to devices. Subnets: Subnets are smaller portions of the IP network partitioned to keep networks under control. Lease: It is simply the time that how long the information received from the server is valid, in case of expiration of the lease, the tenant must have to re-assign the lease. DNS Servers: DHCP servers can also provide DNS (Domain Name System) server information to DHCP clients, allowing them to resolve domain names to IP addresses. Default Gateway: DHCP servers can also provide information about the default gateway, which is the device that packets are sent to when the destination is outside the local network. Options: DHCP servers can provide additional configuration options to clients, such as the subnet mask, domain name, and time server information. Renewal: DHCP clients can request to renew their lease before it expires to ensure that they continue to have a valid IP address and configuration information. Failover: DHCP servers can be configured for failover, where two servers work together to provide redundancy and ensure that clients can always obtain an IP address and configuration information, even if one server goes down. Dynamic Updates: DHCP servers can also be configured to dynamically update DNS records with the IP address of DHCP clients, allowing for easier management of network resources. Audit Logging: DHCP servers can keep audit logs of all DHCP transactions, providing administrators with visibility into which devices are using which IP addresses and when leases are being assigned or renewed -DHCP Messages: - Discover : Sent by the client to find a DHCP server. DHCP Offers A Message: The server will respond to the host in this message specifying the unleased IP address and other TCP configuration information. This message is broadcasted by the server. The size of the message is 342 bytes. If there is more than one DHCP server present in the network then the client host will accept the first DHCP OFFER message it receives. Also, a server ID is specified in the packet in order to identify the server. - Offer : Sent by the server to propose an IP address to the client. DHCP Request Message When a client receives an offer message, it responds by broadcasting a DHCP request message. The client will produce a gratuitous ARP in order to find if there is any other host present in the network with the same IP address. If there is no reply from another host, then there is no host with the same TCP configuration in the network and the message is broadcasted to the server showing the acceptance of the IP address. A Client ID is also added to this message. Now, the request message is broadcast by the client PC therefore source IP address is 0.0.0.0(as the client has no IP right now) and destination IP address is 255.255.255.255 (the broadcast IP address) and the source MAC address is 08002B2EAF2A (PC MAC address) and destination MAC address is FFFFFFFFFFFF. Note – This message is broadcast after the ARP request broadcast by the PC to find out whether any other host is not using that offered IP. If there is no reply, then the client host broadcast the DHCP request message for the server showing the acceptance of the IP address and Other TCP/IP Configuration. - Request : Sent by the client to request the offered IP address. DHCP Acknowledgment Message: In response to the request message received, the server will make an entry with a specified client ID and bind the IP address offered with lease time. Now, the client will have the IP address provided by the server. Now the server will make an entry of the client host with the offered IP address and lease time. This IP address will not be provided by the server to any other host. The destination MAC address is 00:11:22:33:44:55 (client’s MAC address) and the destination IP address is 255.255.255.255 and the source IP address is 172.16.32.12 and the source MAC address is 00AA00123456 (server MAC address). - Acknowledge (ACK) : Sent by the server to confirm the IP address allocation. DHCP Negative Acknowledgment Message: Whenever a DHCP server receives a request for an IP address that is invalid according to the scopes that are configured, it sends a DHCP Nak message to the client. Eg-when the server has no IP address unused or the pool is empty, then this message is sent by the server to the client - NACK (Negative Acknowledge) : Sent by the server if it cannot provide the requested IP address. DHCP Release: A DHCP client sends a DHCP release packet to the server to release the IP address and cancel any remaining lease time. - Release: Sent by the client to inform the server that it no longer needs the IP address. DHCP Inform: If a client address has obtained an IP address manually then the client uses DHCP information to obtain other local configuration parameters, such as domain name. In reply to the DHCP inform message, the DHCP server generates a DHCP ack message with a local configuration suitable for the client without allocating a new IP address. This DHCP ack message is unicast to the client. Note – All the messages can be unicast also by the DHCP relay agent if the server is present in a different network - Inform : Sent by the client when it needs to request additional configuration parameters, but does not need an IP address. DHCP Discover Message: This is the first message generated in the communication process between the server and the client. This message is generated by the Client host in order to discover if there is any DHCP server/servers are present in a network or not. This message is broadcasted to all devices present in a network to find the DHCP server. This message is 342 or 576 bytes long. As shown in the figure, the source MAC address (client PC) is 08002B2EAF2A, the destination MAC address(server) is FFFFFFFFFFFF, the source IP address is 0.0.0.0(because the PC has had no IP address till now) and the destination IP address is 255.255.255.255 (IP address used for broadcasting). As they discover message is broadcast to find out the DHCP server or servers in the network therefore broadcast IP address and MAC address is used. Types of DHCP - Automatic: The DHCP server permanently assigns a specific IP address to a client from a pool of available addresses. Once assigned, the IP is reserved for the client. Automatic DHCP (Dynamic Host Configuration Protocol) is a network management protocol that automatically assigns IP addresses and other network configuration settings (like subnet mask, default gateway, and DNS servers) to devices on a network. This process allows devices to connect to the network and communicate without needing manual configuration for each device. Dynamic: The server assigns an IP address from a pool of available addresses for a limited time (lease time). Dynamic DHCP (Dynamic Host Configuration Protocol) is the standard method used to automatically assign IP addresses to devices on a network without the need for manual configuration. In a dynamic DHCP setup, IP addresses are allocated dynamically from a pool of available addresses on the DHCP server. - (Static) : The DHCP server assigns specific IP addresses to clients based on their MAC addresses (known as DHCP reservation). This is typically used for devices that need a fixed IP (e.g., servers or printers). Static DHCP, also known as DHCP Reservation, is a method where a DHCP server assigns a specific IP address to a particular device based on its MAC address (unique hardware address). Unlike the traditional DHCP, where devices are given dynamic IP addresses, static DHCP ensures that a device always receives the same IP address each time it connects to the network. . Advantages of DHCP - Simplified Configuration : DHCP automates IP address assignment, reducing manual configuration and errors. -Efficient IP Address Management : It dynamically assigns IP addresses, ensuring that IP address usage is optimized. - Flexibility : It supports mobile devices, allowing them to move between networks and still obtain valid IP configurations without manual intervention. - Reduced Network Admin Workload : It eliminates the need for manual configuration of each device’s IP address. Advantages Centralized management of IP addresses. Centralized and automatedTCP/IP configuration . Ease of adding new clients to a network. Reuse of IP addresses reduces the total number of IP addresses that are required. The efficient handling of IP address changes for clients that must be updated frequently, such as those for portable devices that move to different locations on a wireless network. Simple reconfiguration of the IP address space on the DHCP server without needing to reconfigure each client. The DHCP protocol gives the network administrator a method to configure the network from a centralized area. With the help of DHCP, easy handling of new users and the reuse of IP addresses can be achieved. Disadvantages IP conflict can occur. The problem with DHCP is that clients accept any server. Accordingly, when another server is in the vicinity, the client may connect with this server, and this server may possibly send invalid data to the client. The client is not able to access the network in absence of a DHCP Server. The name of the machine will not be changed in a case when a new IP Address is assigned. Which port is used in DHCP? DHCP uses UDP port 67 on the server and UDP port 68 on the client. Which layer protocol is DHCP? DHCP is an application layer protocol. Common DHCP Issues - IP Address Conflicts : If a client receives an IP address that has already been assigned to another device, it can cause network issues. This is typically resolved by proper lease management and DHCP server configuration. - DHCP Server Unavailability : If the DHCP server is down or unreachable, devices won’t be able to obtain IP addresses, leading to network disruptions. - Exhausted IP Pool : If the DHCP server runs out of available IP addresses in its scope (because too many devices are on the network), new devices cannot obtain an IP address. - Lease Expiration : If the client doesn’t renew its lease in time, it may lose its IP address, which could cause network issues until the lease is renewed or reassigned. DHCP Security Considerations - DHCP Spoofing : A malicious user could set up a rogue DHCP server to assign incorrect IP addresses, causing network disruptions or man-in-the-middle attacks. - DHCP Starvation Attack : This attack involves sending numerous DHCP requests with fake MAC addresses to exhaust the DHCP server’s available pool of IP addresses. - DHCP Snooping : A security feature used in switches to prevent rogue DHCP servers by allowing only authorized DHCP servers to assign IP addresses to clients. Security Considerations for Using DHCP To make sure your DHCP servers are safe, consider these DHCP security issues: Limited IP Addresses : A DHCP server can only offer a set number of IP addresses. This means attackers could flood the server with requests, causing essential devices to lose their connection. Fake DHCP Servers : Attackers might set up fake DHCP servers to give out fake IP addresses to devices on your network. DNS Access : When users get an IP address from DHCP, they also get DNS server details. This could potentially allow them to access more data than they should. It’s important to restrict network access, use firewalls, and secure connections with VPNs to protect against this. DHCP in Different Environments - Home Networks : DHCP is often used by routers to provide IP addresses to all connected devices (laptops, smartphones, IoT devices). - Enterprise Networks : DHCP can be configured to work with larger and more complex network topologies, with multiple subnets and more sophisticated options (such as DNS servers, VLAN assignments, etc.). - ISPs : DHCP is commonly used by Internet Service Providers (ISPs) to assign IP addresses dynamically to home broadband routers and modems DHCP Option DHCP allows the transmission of various options that can be configured to send additional information along with IP address assignment: - Option 3 : Default Gateway - Option 6 : DNS Servers - Option 15: Domain Name - Option 51: Lease Time - Option 66 : TFTP Server Name (used for PXE booting) - Option 67 : Bootfile Name (used for PXE booting) DHCP Protocol Versions: - DHCPv4 : The most commonly used version of DHCP, which assigns IPv4 addresses. - DHCPv6 : A version designed for IPv6 networks, providing similar functionality but adapted for the larger address space and different structure of IPv6. Conclusion: DHCP is a key protocol in modern networks, automating the assignment of IP addresses and other essential configuration information. It simplifies network management, reduces administrative overhead, and helps ensure smooth and dynamic communication between devices. However, network administrators must consider security issues and the potential for misconfigurations to ensure the network runs efficiently and securely. Configuration to dhcp Step 2: Step3: HSRP (Hot Standby Router Protocol) is a Cisco proprietary redundancy protocol used to ensure network reliability and minimize downtime in case of router failures. It allows multiple routers (usually two or more) to work together to present a single virtual router (or gateway) IP address to the network. This helps provide high availability and fault tolerance for critical network paths. Key Concepts of HSRP 1. Virtual Router HSRP creates a virtual IP and MAC address that hosts in the network can use as their default gateway. This virtual router is shared by a group of physical routers. Only one physical router actively forwards traffic for the virtual IP at a time. 2. Active Router The router that is currently forwarding traffic for the virtual IP address is called the Active router. It is responsible for responding to ARP requests with the virtual MAC address. 3. Standby Router The Standby router is the one that will take over the forwarding of traffic if the Active router fails. It is continuously monitoring the Active router and will assume the role of the Active router when necessary. 4. HSRP Group HSRP routers are organized into groups, each identified by a unique group number (ranging from 0 to 255). Each group can have its own virtual IP address and associated virtual MAC address. 5. Hello Protocol Routers participating in HSRP exchange hello packets at regular intervals to maintain synchronization and detect the failure of the Active router. If the Active router fails, the router with the highest priority (or the next available router) takes over the Active role. 6. Priority Each HSRP router is assigned a priority value (default is 100). The router with the highest priority becomes the Active router. If there is a tie, the router with the highest IP address becomes the Active router. 7. Virtual MAC Address HSRP routers use a virtual MAC address to respond to ARP requests. The virtual MAC address format is: 00:00:0C:07:AC:xx where xx is the HSRP group number in hexadecimal. For example, for group 1, the MAC address would be 00:00:0C:07:AC:01. HSRP States HSRP routers transition through different states as they negotiate and monitor the status of the network: 1. Initial The router is powered on or reloaded and has not yet participated in HSRP. 2. Learn The router has not yet heard any HSRP hello packets and is learning about the virtual IP. 3. Listen The router has heard hello packets and is aware of the virtual IP address, but it is not currently the Active or Standby router. 4. Speak The router is actively participating in the election process to determine which router will be Active and which will be Standby. 5. Standby: The router is ready to take over in case the Active router fails, but it is not currently forwarding traffic. 6. Active: The router is the Active router and is currently forwarding traffic for the virtual IP. HSRP Timers HSRP routers use timers to maintain their roles and monitor the status of the Active router - Hello Time Default is 3 seconds. This is the interval between each hello packet sent by the Active router. - Hold Time Default is 10 seconds. This is the amount of time the Standby router will wait without receiving a hello packet from the Active router before assuming the Active role. - Dead Time The time a router waits before it determines the Active router has failed (default is 40 seconds). HSRP Versions There are two main versions of HSRP: 1. HSRP Version 1 (HSRPv1): - This version uses the 224.0.0.2 multicast address for hello packets. - It supports up to 256 groups (0 to 255). - It does not support IPv6. 2. HSRP Version 2 (HSRPv2): - This version uses the 224.0.0.102 multicast address for hello packets. - It supports up to 4096 groups (0 to 4095). - It introduces some improvements in security, such as authentication. - HSRPv2 also supports IPv6 addresses. Benefits of HSRP 1. Redundancy and High Availability: HSRP ensures that if one router fails, another router can quickly take over, minimizing network downtime and improving fault tolerance. 2. Load Sharing (with variations like GLBP): Although HSRP itself is typically designed for failover, other protocols like GLBP (Gateway Load Balancing Protocol) can be used to share the load between multiple routers, providing additional redundancy and efficient use of resources. 3. Simplicity: HSRP is relatively simple to configure and does not require complex routing protocols or changes to the IP addressing scheme. Limitations of HSRP 1. Cisco Proprietary: HSRP is proprietary to Cisco, so it may not be compatible with non-Cisco devices unless they support a similar protocol (e.g., VRRP - Virtual Router Redundancy Protocol). 2. Single Active Router: HSRP, by default, only allows one router to be the Active router at any time. In certain situations, this may not be the most efficient use of network resources. 3. No Load Balancing: In its basic form, HSRP does not provide load balancing between the routers; it only provides failover capability. However, features like GLBP or VRRP can address this need. Conclusion HSRP is an essential protocol for ensuring network resilience and high availability in Cisco networks. It provides router redundancy and ensures that network traffic can continue to flow smoothly even if one router fails. Understanding how to configure HSRP and leverage its features effectively is crucial for maintaining a reliable and fault-tolerant network infrastructure. Configuration of HSRP SSH(secure shell protocol) Definition of SSH SSH is an acronym for Secure Shell. It is a generic term that refers to versions of SSH protocols, for example SSH-1 and SSH-2, among other things like OpenSSH. While it is often referred to as a version of SSH, it is, strictly speaking, a suite that consists of networking utilities that are based on the SSH protocol. SSH protocols specify standards for operating network services securely between untrusted hosts over unsecured networks. Communications between a client and server using SSH are encrypted, so it is ideal for use on unsecure networks. Originally, the word shell in SSH referred to a program that processed Unix commands. Over time, the term has been increasingly applied to the user interfaces of servers that make them more user friendly to interact with. An example of another commonly used shell is Windows Command Prompt (cmd.exe), which provides access to Windows operating system tools. SSH itself is not a shell, like the Unix Bourne shell or C shell; instead, it creates a channel for running a shell on a remote computer. SSH manages more than half the world’s web servers, on-premise and in the cloud. SSH is used to secure, configure, manage, maintain, and operate network servers, routers, firewalls, switches, operating systems, and applications. SSH protocols cover authentication, encryption, and data integrity. SSH is so popular that, like Google, it is often used as a verb, for example SSH-ing. Versions There are two main versions of SSH: SSH-1 and SSH-2. A fourth type of SSH, SSH-1.9, was defined in 2006. It is used to identify servers that are backwards compatible with SSH versions, specifically that a server supports SSH-2 as well as previous versions of SSH. SSH is most commonly used by variants of Unix operating systems, for example Linux and macOS. It is also used with Microsoft Windows, for example Windows 10 uses OpenSSH as its default SSH client and SSH server. In comparison to SSH-1, SSH-2 comes with security and feature improvements but it is not compatible with SSH-1. One of the security improvements of SSH-2 is the use of the Diffie-Hellman key exchange. The Diffie-Hellman key exchange is a method of exchanging cryptographic keys over a public channel like the internet. SSH-2 also added additional message authentication codes to improve data integrity. Because of design flaws, SSH-1 is generally considered obsolete. Most modern systems support SSH-2. History SSH was developed by Tatu Ylonen, a researcher at Helsinki University of Technology, in 1995. Ylonen created the first version of the protocol after the university’s network was hacked and thousands of usernames and passwords were breached. Ylonen's goal was to develop a solution that he could use to remotely log in to the internet securely. Ylonen first spent some time studying cryptography, the backbone of SSH. After getting SSH standardized by the Internet Engineering Task Force (IETF), he designed the SSH File Transfer Protocol (SFTP) and then founded SSH Communications Security Corporation to provide commercial support for the paid versions of SSH. Designed to replace Telnet (port 23) and FTP (port 21), Tatu Ylonen was able to get SSH allocated to port 22 by the Internet Assigned Numbers Authority (IANA). What is an SSH client? SSH is based on a client-server architecture model. In this model, a host is any computer that is connected to a network; clients and servers are programs that run on a host. A user uses their computer (the client) to connect to a remote computer (the server). Using a graphical user interface (GUI) or command-line tool, a user can transfer data between the client and server. Both the client and server must have SSH enabled. The SSH client is a program on the computer that makes a request that uses SSH to connect to a remote system. For Unix-type operating systems, the SSH functionality is built-in. For non-Unix-type operating systems, there are also external clients available, for example PuTTY, EasySSH, and Cyberduck. For Windows operating systems, there are also numerous SSH clients, for example PuTTY, Solar-PuTTy, WinSCP, and MobaXterm. Most SSH clients provide more functionality than traditional SSH command-line execution, for example the ability to run multiple sessions simultaneously, to highlight keywords across sessions, to use other connection types like Telnet, and to save credentials. Where is SSH used? SSH is often used in conjunction with various other internet protocols. SFTP is a secure alternative to the traditional FTP and Secure Copy (SCP) protocols that support file transfers between hosts on a network. SFTP allows fast, dynamic encryption and decryption. Automated secure connections In corporate environments, automated SSH connections are commonly used for encrypted file transfers and automated authentication for machine-to-machine (M2M) processes. Automated tasks include data backup and archiving, reporting, database cleanups, system backups, and network maintenance. Manual secure connections Businesses can use SSH tunnels to securely share files with customers. Remote network administration SSH enables secure logins to remote computers. It is routinely used by network administrators and webmasters to secure file transfers, automate data transfers using SSH scripts, establish VPNs, test applications, reboot systems, change file permissions, and manage user access. Most administrators routinely use an SSH client to securely access remote servers, switches, routers, virtualization platforms, and operating systems. Tasks include streaming video using SFTP, creating a single authenticated session for multiple connections, performing remote backups, connecting remote folders to a local directory, and using an encryption key for multiple accounts instead of different passwords. Application security Usually, TCP/IP applications use a dedicated port to communicate. With port forwarding, multiple applications can use a single port, namely port 22. Core SSH features SSHD To establish an SSH connection, the remote computer must run an SSH daemon (sshd), which is a program that listens for connection requests, typically on port 22, authenticates connection requests, and triggers connections. The SSH daemon enables the encrypted exchange of data between untrusted hosts over an unsecure network using the SSH protocol. A daemon is an application that runs in the background and, like any other application, it is coded and configured to perform specific tasks for a specific application. RFCs SSH is defined by a number of Request For Comments (RFCs) publications. An RFC describes standards, protocols, and technologies that are relevant to the internet, like SSH. For example, there are standard documents for all SSH layers, SSH cryptographic algorithms, and SSH security certificates. There is also an RFC that specifies that the SSH transport layer must allow perfect forward secrecy (PFS). Perfect forward secrecy ensures that if a server’s private key is compromised, a hacker would not be able to access previously transmitted data. SSH layers SSH is made up of three layers: transport, user authentication, and connection layers. The transport layer handles the encryption and decryption of the data exchanged. The transport layer also authenticates the server and establishes confidentiality and integrity. The user authentication layer authenticates the identity of the client. The connection layer manages channels through which data travels between authenticated parties in the data exchange process. There are channels, or data streams, for different kinds of communications, for example simultaneous connections to different remote terminals or services, or forwarded X11 sessions. SSH encryption The main advantage that SSH has over alternatives is the use of encryption. SSH encrypts all traffic between a client and a server while in transit. Anyone that eavesdrops on the traffic, for example by using a packet-sniffing program, will not be able to access or decrypt transmitted data. SSH uses three encryption methods: symmetric encryption, asymmetric encryption, and hashing. Symmetric encryption involves a secret key that is used for both the encryption and decryption of an entire SSH connection. The symmetric key is created using an agreed key exchange algorithm. Asymmetric encryption involves two separate keys - a public-private key pair - for encryption and decryption. In an SSH session, asymmetric encryption is used to set up the symmetric encryption. In the symmetric encryption stage, the client and server produce temporary key pairs and exchange the public key in order to create the symmetric key. Asymmetric encryption is also used to authenticate the identity of the client to the server. The hashing method converts the data being transmitted into another unique value. SSH uses hashing to verify the authenticity of messages. Tunneling and port forwarding SSH supports port forwarding and tunneling. The terms port forwarding and tunneling are often used interchangeably. However, tunneling is a more inclusive term that describes three types of port forwarding: local port forwarding, remote port forwarding, and dynamic port forwarding. SSH tunneling can be used to transfer unencrypted traffic on a network via an encrypted channel. For example, an encrypted SSH tunnel can be created to transmit data between an FTP server and a client even though the FTP protocol is not encrypted. SSH tunnels can also be used to access geo-restricted content and to bypass firewalls. X11 forwarding SSH enables X11 forwarding, which can be used when a user wants to connect to a remote server and also needs a GUI to view the application running or the data. X11 forwarding allows a user to start up a remote application and then transmit the application’s output to a local Windows machine (Domain Name System) The Domain Name System (DNS) is a hierarchical and decentralized naming system that translates human-readable domain names into machine-readable IP addresses, enabling users to access websites and other resources on the internet. DNS plays a vital role in the functioning of the internet by making it easier for people to navigate online, as we typically access websites by their domain names rather than by their numerical IP addresses ( 192.0.2.1). Key Concepts of DNS 1. Domain Names: A domain name is a human-readable address used to identify websites or other services on the internet. The domain name is divided into different levels: - Top-Level Domain (TLD): The last part of the domain name, such as .com, .org, .net, .gov, etc. It can also be a country code, like .us, .uk, .in. - Second-Level Domain (SLD): The part before the TLD, like example in example.com. - Subdomains: Additional subdivisions under the domain name. For instance, mail.example.com or blog.example.com are subdomains of example.com. 2. DNS Records: DNS records are entries in the DNS database that provide information about domain names and their corresponding IP addresses. The most common types of DNS records include: - A Record (Address Record): Maps a domain name to an IPv4 address. - AAAA Record (IPv6 Address Record): Maps a domain name to an IPv6 address. - CNAME Record (Canonical Name Record): Used to alias one domain name to another (e.g., www.example.com to example.com). - MX Record (Mail Exchange Record): Specifies the mail servers responsible for receiving email for the domain. - TXT Record: Used for storing text information, often for verification purposes, such as SPF records for email authentication. - NS Record (Name Server Record): Specifies the authoritative name servers for a domain. 3. DNS Hierarchy: The DNS system is organized in a hierarchical manner, with each level of the domain name corresponding to a different level in the DNS database: - Root DNS Servers: The topmost level in the hierarchy. They contain information about the authoritative name servers for each TLD. - TLD Name Servers: Responsible for knowing the authoritative name servers for each domain within a specific TLD (e.g., .com or .org). - Authoritative Name Servers: The servers that hold the DNS records for a particular domain, providing the final response to DNS queries. 4. DNS Resolution Process: The process by which a DNS query is resolved involves several steps: 1. User Initiates a Query: When a user types a URL (e.g., www.example.com) into their browser, the browser checks if the domain name has been previously resolved (cached). 2. Querying the Recursive Resolver: If the domain name is not cached, the query is sent to a recursive resolver (typically operated by the user's ISP or a public DNS service like Google DNS). 3. Root Server Lookup: If the recursive resolver doesn't have the answer, it queries a root DNS server to find the authoritative name server for the relevant TLD. 4. TLD Server Lookup: The resolver then queries the *TLD name server* to find the authoritative name server for the domain. 5. Authoritative Server Lookup: Finally, the resolver queries the authoritative name server for the domain, which returns the corresponding IP address (or other DNS records). 6. Caching and Response: The IP address is returned to the user's browser, and it is cached by both the browser and the recursive resolver for future use. 5. DNS Caching: To improve speed and reduce the load on DNS servers, DNS responses are cached at various points in the resolution process: - Browser Cache: The browser caches DNS information to avoid repeated lookups. - Recursive Resolver Cache: DNS resolvers cache information to respond quickly to repeated queries. - Authoritative Server Cache: The authoritative server may also cache DNS information, though it typically has more up-to-date records. 6. Types of DNS Servers: - Recursive Resolver: A server that queries other DNS servers to resolve a domain name. - Authoritative Name Server: A server that stores the actual DNS records for a domain and provides definitive answers. - Caching Resolver: A type of recursive resolver that stores DNS records temporarily to speed up subsequent queries. There are several types of DNS (Domain Name System) records, each serving a specific purpose in the functioning of the DNS system. Here are the main types of DNS records: 1. A Record (Address Record): Maps a domain name to an IPv4 address (e.g., example.com -> 192.0.2.1). 2. AAAA Record (IPv6 Address Record): Maps a domain name to an IPv6 address (e.g., example.com -> 2001:0db8::ff00:42:8329). 3. CNAME Record (Canonical Name Record): Redirects one domain name to another (e.g., www.example.com -> example.com). 4. MX Record (Mail Exchange Record): Specifies the mail servers responsible for receiving email for the domain (e.g., example.com -> mail.example.com). 5. TXT Record (Text Record): Holds arbitrary text data; often used for verification purposes or to store SPF (Sender Policy Framework) records and other types of information (e.g., v=spf1 include:_spf.google.com ~all). 6. NS Record (Name Server Record): Specifies the authoritative DNS servers for a domain (e.g., example.com -> ns1.example.com). 7. SOA Record (Start of Authority Record): Provides essential information about the domain, such as the primary DNS server, the administrator's email, and the domain's serial number. 8. PTR Record (Pointer Record): Used for reverse DNS lookups, mapping an IP address to a domain name (e.g., 192.0.2.1 -> example.com). 9. SRV Record (Service Record): Defines the location of services (such as VoIP or instant messaging) within the domain (e.g., _sip._tcp.example.com). 10. CAA Record (Certification Authority Authorization): Specifies which certificate authorities (CAs) are allowed to issue SSL/TLS certificates for the domain. These are just a few of the most common types of DNS records, and each serves a specific function in the management and resolution of domain names. 7. DNS Security (DNSSEC): DNS Security Extensions (DNSSEC) are designed to protect against certain types of attacks, such as cache poisoning. DNSSEC adds digital signatures to DNS records, which are verified by resolvers to ensure the integrity and authenticity of the responses. 8. Public DNS Services: Some well-known public DNS providers include: - *Google DNS (8.8.8.8 and 8.8.4.4)* - *Cloudflare DNS (1.1.1.1 and 1.0.0.1)* - *OpenDNS (208.67.222.222 and 208.67.220.220)* 9. Dynamic DNS (DDNS): Dynamic DNS is a service that allows users to automatically update their DNS records when their IP address changes. This is especially useful for home networks or for applications like remote access. 10. Reverse DNS Lookup: A reverse DNS lookup (rDNS) is the process of determining the domain name associated with an IP address. It’s the opposite of the standard DNS lookup, which maps domain names to IP addresses. Example of DNS Resolution: When you type www.example.com into your web browser: 1. The browser checks its local DNS cache for the IP address. 2. If not found, the browser queries the recursive DNS resolver. 3. The resolver asks the root DNS server which TLD server is responsible for .com. 4. The TLD server tells the resolver which authoritative server handles example.com. 5. The authoritative server responds with the IP address of www.example.com. 6. The IP address is returned to the browser, which then makes the connection to the server hosting the website. Importance of DNS: - Usability: DNS abstracts the complexity of IP addresses, making it easier for users to access resources online using simple, memorable domain names. - Scalability: DNS enables the internet to scale by providing a decentralized way to manage domain names and associated resources. - Load Balancing and Redundancy: DNS can be configured to provide multiple IP addresses for a single domain, enabling load balancing and fault tolerance. Conclusion: The Domain Name System is a critical component of the internet's infrastructure, enabling users to access websites and services by translating domain names into IP addresses. DNS helps simplify navigation, provides scalability, and supports the reliable operation of the global internet network. Understanding how DNS works is essential for anyone involved in networking, website administration, or cybersecurity. Port Security refers to the protection of network access ports from unauthorized access, misuse, or security threats. In a networking context, this typically pertains to securing switch ports in a Local Area Network (LAN) from potential attacks or unauthorized devices. Port security is a critical element of network security because physical network ports are often entry points for unauthorized access. Key Aspects of Port Security: 1. Port Security Mechanisms -Static MAC Address Binding: This involves assigning a specific MAC address to a port. Only the device with the assigned MAC address can communicate through that port. If any other device tries to connect, the port is blocked. - Dynamic MAC Address Learning: The switch learns MAC addresses dynamically and limits the number of MAC addresses allowed on a port. If the number of addresses exceeds the limit, it can shut down the port or trigger other actions. - Sticky MAC Address: A combination of static and dynamic learning, where the switch "sticks" the dynamically learned MAC address to the configuration, meaning the address is retained across reboots. - Port Security Violation Actions: The switch can take different actions if a violation is detected: - Protect: The switch drops packets from unauthorized devices, but doesn’t log the violation. - Restrict: Similar to protect but also generates a log and sends an alert. - Shutdown: The most severe action; the port is disabled, and an alert is sent. This is often the default violation action. 2. Security Benefits - Prevents Unauthorized Access: Port security restricts unauthorized devices from accessing the network by controlling the MAC addresses that can be associated with each port. - Mitigates MAC Flooding Attacks: In a MAC flooding attack, an attacker sends a flood of frames with random source MAC addresses to overload the switch's MAC address table. Port security helps mitigate this by limiting the number of MAC addresses allowed on a port. - Protects Network Resources: By preventing unauthorized devices, port security ensures that sensitive resources or data are not exposed to external attackers or rogue devices. 3. Types of Port Security - Access Ports: These are the ports that connect to end devices (computers, printers, etc.). Port security on access ports ensures that only authorized devices can connect. An access port is a network port used on a switch that is assigned to a single VLAN (Virtual Local Area Network) and is typically used for devices like computers, printers, or access points. It is one of the types of *switch ports that facilitate network communication. Here's a breakdown of the concept: Key Features of Access Ports: 1. Single VLAN: An access port is configured to belong to only one VLAN. It carries traffic only for that VLAN, and all incoming traffic is tagged with that VLAN ID by the switch. 2. No Tagging: On an access port, Ethernet frames are untagged. When traffic from the access port leaves the switch, it is tagged with the appropriate VLAN ID, but the devices connected to the access port do not add VLAN tags. 3. End Devices: Typically used for end devices like PCs, printers, or other devices that do not understand VLAN tagging. 4. Use in VLAN segmentation: Access ports are used to separate devices into different VLANs, thus providing network segmentation for security and traffic management. - Trunk Ports: These ports connect switches together, usually carrying traffic from multiple VLANs. Port security can also be configured on trunk ports to prevent unauthorized VLAN hopping or other attacks. - Voice VLANs: Ports that are designated for voice communication (such as IP phones) can also have port security settings to restrict unauthorized devices. 5. Port Security Violation Recovery - Manual Recovery: An administrator can manually re-enable a port after a security violation, using commands like shutdown and no shutdown in configuration mode. - Automatic Recovery: Some switches can be configured to automatically recover from a violation after a certain period. 6. Limitations of Port Security - Scalability: Port security is generally better suited for smaller networks. For large networks, managing individual ports and MAC addresses may become cumbersome. - MAC Address Spoofing: If an attacker can change their MAC address to match a legitimate device, they might bypass port security restrictions. - Dynamic Changes: When devices like laptops or mobile phones connect and disconnect frequently, managing static MAC address bindings can be cumbersome. 7. Port Security in Modern Networks - In large, modern enterprise environments, port security is often part of a broader security strategy that includes techniques like 802.1X (port-based network access control), which authenticates users before granting access to the network. - The integration of network access control (NAC) systems with port security enhances the ability to enforce security policies Port security is a powerful feature for controlling who can connect to a network, helping to secure a local network from unauthorized access, but it needs to be managed properly to avoid false alarms and ensure network availability. Port Security in Computer Network Attackers’ task is comparatively very easy when they can enter the network they want to attack. Ethernet LANs are very much vulnerable to attack as the switch ports are open to use by default. Various attacks such as Dos attack at layer 2, address spoofing can take place. If the administrator has control over the network then obviously the network is safe. To take total control over the switch ports, the user can use a feature called port-security. If somehow prevent an unauthorized user to use these ports, then the security will increase up to a great extent at layer 2. Users can secure a port in two steps: Limiting the number of MAC addresses to a single switch port, i.e if more than the limit, Mac addresses are learned from a single port then appropriate action will be taken. If unauthorized access is observed, the traffic should be discarded by using any of the options, or more appropriately, the user should generate a log message so that unauthorized access can be easily observed. Portsecurity Switches learn MAC addresses when the frame is forwarded through a switch port. By using port security, users can limit the number of MAC addresses that can be learned to a port, set static MAC addresses, and set penalties for that port if it is used by an unauthorized user. Users can either use restrict, shut down or protect port-security commands. Let’s discuss these violation modes: protect – This mode drops the packets with unknown source mac addresses until you remove enough secure mac addresses to drop below the maximum value. restrict – This mode performs the same function as protecting, i.e drops packets until enough secure mac addresses are removed to drop below the maximum value. In addition to this, it will generate a log message, increment the counter value, and will also send an SNMP trap. shut down – This mode is mostly preferred as compared to other modes as it shut down the port immediately if unauthorized access is done. It will also generate a log, increment counter value, and send an SNMP trap. This port will remain in a shutdown state until the administrator will perform the “no shutdown” command. Sticky – This is not a violation mode. By using the sticky command, the user provides static Mac address security without typing the absolute Mac address. For example, if user provides a maximum limit of 2 then the first 2 Mac addresses learned on that port will be placed in the running configuration. After the 2nd learned Mac address, if the 3rd user wants to access then the appropriate action will be taken according to the violation mode applied. Note – The port security will work on access port only i.e to enable port security, the user first has to make it an access port. Configuration to port security Applying port-security on fa0/1 interface of switch .first, convert the port to an access port and will enable port-security. S1(config)#int fa0/1 S1(config-if)#switchport mode access S1(config-if)#switchport port-security Use sticky command so that it will learn the Mac address dynamically and will provide the limit and the appropriate action that should be taken. S1(config-if)#switchport port-security mac-address sticky S1(config-if)#switchport port-security maximum 2 S1(config-if)#switchport port-security violation shutdown If the user wants to provide a static entry, then configure that by starting its Mac address. S1(config-if)#switchport port-security S1(config-if)#switchport port-security violation shutdown S1(config-if)#switchport port-security mac-address aa.bb.cc.dd.ee.ff STP(spanning tree protocol) The Spanning Tree Protocol (STP) is a network protocol that builds a loop-free logical topology for Ethernet networks. The basic function of STP is to prevent bridge loops and the broadcast radiation that results from them. Spanning tree also allows a network design to include backup links providing fault tolerance if an active link fails. As the name suggests, STP creates a spanning tree that characterizes the relationship of nodes within a network of connected layer-2 bridges, and disables those links that are not part of the spanning tree, leaving a single active path between any two network nodes. STP is based on an algorithm that was invented by Radia Perlman while she was working for Digital Equipment Corporation Rapid Spanning Tree Protocol In 2001, the IEEE introduced Rapid Spanning Tree Protocol (RSTP) as IEEE 802.1w. RSTP was then incorporated into IEEE 802.1D-2004 making the original STP standard obsolete.[17] RSTP was designed to be backward-compatible with standard STP. RSTP provides significantly faster spanning tree convergence after a topology change, introducing new convergence behaviors and bridge port roles to accomplish this. While STP can take 30 to 50 seconds to respond to a topology change, RSTP is typically able to respond to changes within 3 × hello times (default: 3 × 2 seconds) or within a few milliseconds of a physical link failure. The hello time is an important and configurable time interval that is used by RSTP for several purposes; its default value is 2 seconds.[18][19] Rapid Spanning Tree operation edit RSTP adds new bridge port roles in order to speed convergence following a link failure: Root – A forwarding port that is the best port from non-root bridge to root bridge Designated – A forwarding port for every network segment Alternate – An alternate path to the root bridge. This path is different from using the root port Backup – A backup/redundant path to a segment where another bridge port already connects Disabled – Not strictly part of STP, a network administrator can manually disable a port The number of switch port states a port can be in has been reduced to three instead of STP's original five: Discarding – No user data is sent over the port Learning – The port is not forwarding frames yet, but is populating its MAC address table Forwarding – The port is fully operational RSTP operational details: Detection of root switch failure is done in 3 hello times, which is 6 seconds if the default hello times have not been changed. Ports may be configured as edge ports if they are attached to a LAN that has no other bridges attached (depending on vendor, admin-edge or portfast mode). These edge ports transition directly to the forwarding state, avoiding problems with hosts expecting an upcoming link to work right away, e.g. with DHCP. RSTP still continues to monitor the port for BPDUs in case a bridge is connected. RSTP can also be configured to automatically detect edge ports. As soon as the bridge detects a BPDU coming to an edge port, the port becomes a non-edge port. RSTP calls the connection between two or more switches as a "link-type" connection. A port that operates in full-duplex mode is assumed to be point-to-point link, whereas a half-duplex port (through a hub) is considered a shared port by default. This automatic link type setting can be overridden by explicit configuration. RSTP improves convergence on point-to-point links by reducing the Max-Age time to 3 times Hello interval, removing the STP listening state, and exchanging a handshake between two switches to quickly transition the port to forwarding state. RSTP does not do anything differently from STP on shared links. Unlike in STP, RSTP will respond to BPDUs sent from the direction of the root bridge. An RSTP bridge will propose its spanning tree information to its designated ports. If another RSTP bridge receives this information and determines this is the superior root information, it sets all its other ports to discarding. The bridge may send an agreement to the first bridge confirming its superior spanning tree information. The first bridge, upon receiving this agreement, knows it can rapidly transition that port to the forwarding state bypassing the listening/learning state transition. This essentially creates a cascading effect away from the root bridge where each designated bridge proposes to its neighbors to determine if it can make a rapid transition. This is one of the major elements that allows RSTP to achieve faster convergence times than STP. As discussed in the port role details above, RSTP maintains backup details regarding the discarding status of ports. This avoids timeouts if the current forwarding ports were to fail or BPDUs were not received on the root port in a certain interval. RSTP will revert to legacy STP on an interface if a legacy version of an STP BPDU is detected on that port. STP configuration Step 1 Stp 2 Conclusion This network is designed for Afghan schools to help school administrators and all employees perform their tasks quickly and efficiently. The network uses the DHCP protocol to automatically assign IP addresses to all employees, ensuring they never face any issues with connectivity. In this network, we have implemented two routers to ensure redundancy. In case one router encounters a problem, the HSRP protocol enables the backup router to automatically take over, providing uninterrupted internet access. The HSRP protocol ensures that if one router fails, the switches automatically connect to the second router for internet access. Additionally, we have integrated DNS to automatically resolve the user names to IP addresses, so employees won’t face any issues. This feature simplifies the network and enhances usability. For security, we use port security to safeguard the network. All employees can send and receive documents securely, ensuring that all data is protected and no security vulnerabilities exist. This network is crucial for Afghan schools, and it will, God willing, resolve all of the school’s challenges, enabling tasks to be completed efficiently and without any problems. Reference Kozierok. Charles M, The TCP/IP guide (san Francisco : starch press 2005), 95. Donahue. Gary A, network warrior (Sebastopol : O'Reilly media 2007), 103. Cole.Eric, network security bible (Hoboken: wiley publishing 2005),74. https://www.pluralsight.com/ https://www.netacad.com https://www.udemy.com https://www.youtube.com