When connecting hundreds of computers across multiple buildings, you'll need to consider both physical infrastructure and logical network design. The key components are:
- Fiber optic backbone between buildings (single-mode for long distances)
- Network switches in each building (layer 3 switches recommended)
- Proper VLAN segmentation for traffic isolation
- Redundant uplinks for reliability
A hierarchical star topology works best for campus networks:
// Sample network diagram in PlantUML format
@startuml
skinparam monochrome true
component "Main Server" as server
cloud "Building A" as bldgA {
component "Switch A1" as swA1
component "Switch A2" as swA2
}
cloud "Building B" as bldgB {
component "Switch B1" as swB1
}
server -- swA1 : 10G Fiber
server -- swB1 : 10G Fiber
swA1 -- swA2 : 1G Copper
@enduml
Here's a basic configuration example for a Cisco switch connecting buildings:
enable
configure terminal
!
interface GigabitEthernet1/0/1
description Uplink to Main Server
switchport mode trunk
switchport trunk allowed vlan 10,20,30
speed 1000
duplex full
!
interface GigabitEthernet1/0/2
description Downlink to Building B
switchport mode trunk
switchport trunk allowed vlan 10,20,30
speed 1000
duplex full
!
vlan 10
name Servers
vlan 20
name Staff
vlan 30
name Students
!
end
To prevent bottlenecks:
- Use link aggregation (LACP) between critical switches
- Implement QoS policies for priority traffic
- Consider OSPF or EIGRP for dynamic routing between buildings
- Monitor bandwidth usage with SNMP or NetFlow
When setting up your email and HTTP servers:
# Example Nginx config for load balancing
upstream backend {
server 10.0.10.10:80;
server 10.0.10.11:80;
}
server {
listen 80;
location / {
proxy_pass http://backend;
}
}
For the email server, consider using Postfix with multiple MX records distributed across buildings for redundancy.
Common issues and how to resolve them:
# Useful network troubleshooting commands
ping -c 5 server.domain.edu # Basic connectivity
traceroute server.domain.edu # Path analysis
mtr --report server.domain.edu # Continuous path monitoring
netstat -tuln # Check listening ports
tcpdump -i eth0 -w capture.pcap # Packet capture
When connecting multiple buildings in a campus environment, you'll need to consider several physical layer factors. The most common approaches are:
// Sample network topology configuration
Building A (Main Server Building):
- Core switch: Cisco Catalyst 9500
- Fiber uplinks to other buildings
- Server farm with 10Gbps connections
Building B (Remote Building 1):
- Distribution switch: Cisco Catalyst 9300
- 1Gbps/10Gbps fiber back to core
- Access switches: Cisco Catalyst 9200
Building C (Remote Building 2):
- Similar configuration as Building B
- Redundant fiber paths if budget allows
The inter-building connections form the backbone of your network. Here are your main options:
- Fiber Optic: Best for performance (1Gbps/10Gbps/40Gbps options)
interface GigabitEthernet1/1/1 description Uplink to Building B switchport mode trunk switchport trunk allowed vlan 10,20,30 speed 1000 duplex full
- Wireless Bridge: Useful where fiber isn't feasible (consider Ubiquiti AirFiber)
- Ethernet over Copper: Limited to ~100m distances
For your centralized services (email, HTTP), consider this VLAN strategy:
// VLAN configuration example
vlan 10
name SERVERS
vlan 20
name FACULTY
vlan 30
name STUDENTS
vlan 40
name GUEST
Implement routing between VLANs at your core switch for best performance:
interface Vlan10
ip address 192.168.10.1 255.255.255.0
!
interface Vlan20
ip address 192.168.20.1 255.255.255.0
!
ip route 0.0.0.0 0.0.0.0 192.168.1.1
Your central server should have redundant connections to the core switch:
# Linux server network bonding configuration (/etc/network/interfaces)
auto bond0
iface bond0 inet static
address 192.168.10.10
netmask 255.255.255.0
gateway 192.168.10.1
slaves eno1 eno2
bond-mode 802.3ad
bond-miimon 100
bond-lacp-rate 1
Consider implementing these tools:
# Nagios configuration snippet for network monitoring
define host {
use generic-switch
host_name BuildingB-Switch1
alias Building B Core Switch
address 192.168.1.2
check_command check_ping!100.0,20%!500.0,60%
}
For traffic analysis, implement NetFlow/sFlow on your core switches:
flow record FLOW-RECORD-1
match ipv4 source address
match ipv4 destination address
match transport source-port
match transport destination-port
collect counter bytes
collect counter packets
!
Implement access control between buildings:
access-list 110 permit ip 192.168.10.0 0.0.0.255 192.168.20.0 0.0.0.255
access-list 110 permit ip 192.168.10.0 0.0.0.255 192.168.30.0 0.0.0.255
access-list 110 deny ip any any log
For your HTTP server, consider these Apache optimizations:
# httpd.conf performance tweaks
StartServers 10
MinSpareServers 10
MaxSpareServers 20
ServerLimit 256
MaxClients 256
KeepAlive On
KeepAliveTimeout 5
MaxKeepAliveRequests 100