
নেটওয়ার্কিং কি এবং কেন গুরুত্বপূর্ণ?
নেটওয়ার্কিং হলো সার্ভার, সার্ভিস এবং ইউজারদের মধ্যে যোগাযোগের মূল ভিত্তি। একজন DevOps ইঞ্জিনিয়ার হিসেবে আপনাকে প্রতিদিন রিমোট সার্ভারে কাজ করতে হবে, ফাইল ট্রান্সফার করতে হবে, এবং নেটওয়ার্ক সমস্যা সমাধান করতে হবে।
বাস্তব উদাহরণ: ধরুন আপনি AWS-এ একটি সার্ভার চালু করেছেন। এখন সেই সার্ভারে কোড ডেপ্লয় করতে হবে, লগ ফাইল দেখতে হবে, এবং অ্যাপ্লিকেশন চালু আছে কিনা চেক করতে হবে। এসব কাজের জন্য নেটওয়ার্কিং টুলস জানা অপরিহার্য।
মূল নেটওয়ার্কিং কনসেপ্ট
১. IP Address (আইপি অ্যাড্রেস)
IP Address হলো নেটওয়ার্কে প্রতিটি ডিভাইসের ইউনিক পরিচয়। ঠিক যেমন আপনার বাড়ির একটি ঠিকানা আছে, তেমনি প্রতিটি কম্পিউটার বা সার্ভারের একটি IP Address থাকে।
IPv4 ফরম্যাট: 192.168.1.10
- চারটি সংখ্যা ডট (.) দিয়ে আলাদা
- প্রতিটি সংখ্যা 0 থেকে 255 পর্যন্ত হতে পারে
- মোট ৩২ বিট (৪ বাইট)
উদাহরণ:
# আপনার কম্পিউটারের IP দেখতে
ip addr show
# অথবা
ifconfig
২. DNS (Domain Name System)
DNS হলো ইন্টারনেটের ফোনবুক। এটি ডোমেইন নেম (যেমন: google.com) কে IP অ্যাড্রেসে রূপান্তর করে।
কেন প্রয়োজন? মানুষের পক্ষে 142.250.190.14 মনে রাখার চেয়ে google.com মনে রাখা সহজ।
উদাহরণ:
# DNS রেকর্ড চেক করা
nslookup google.com
dig google.com
# আউটপুট দেখাবে:
# google.com → 142.250.190.14
৩. Port (পোর্ট)
পোর্ট হলো একটি নাম্বার যা নির্দিষ্ট অ্যাপ্লিকেশন চিহ্নিত করে। একটি সার্ভারে অনেক অ্যাপ্লিকেশন চলতে পারে, পোর্ট দিয়ে বোঝা যায় কোন অ্যাপ্লিকেশনে যেতে হবে।
উদাহরণ:
192.168.1.10:22→ SSH সার্ভিস192.168.1.10:80→ HTTP ওয়েব সার্ভার192.168.1.10:3306→ MySQL ডাটাবেস
কমন পোর্ট লিস্ট:
| সার্ভিস | পোর্ট | ব্যবহার |
|---|---|---|
| SSH | 22 | রিমোট সার্ভার এক্সেস |
| HTTP | 80 | ওয়েবসাইট (আনএনক্রিপ্টেড) |
| HTTPS | 443 | ওয়েবসাইট (এনক্রিপ্টেড) |
| MySQL | 3306 | ডাটাবেস |
| PostgreSQL | 5432 | ডাটাবেস |
| MongoDB | 27017 | NoSQL ডাটাবেস |
| Jenkins | 8080 | CI/CD টুল |
| Grafana | 3000 | মনিটরিং ড্যাশবোর্ড |
৪. Ping এবং Traceroute
Ping: নেটওয়ার্ক কানেক্টিভিটি টেস্ট করার টুল।
# গুগল সার্ভার রিচেবল কিনা চেক করা
ping google.com
# আউটপুট:
# PING google.com (142.250.190.14): 56 data bytes
# 64 bytes from 142.250.190.14: icmp_seq=0 ttl=117 time=10.2 ms
Traceroute: প্যাকেট কোন কোন রাউটার দিয়ে যাচ্ছে তা দেখা।
# ইনস্টল করা (যদি না থাকে)
sudo apt install traceroute
# ব্যবহার
traceroute google.com
SSH (Secure Shell) – রিমোট সার্ভার এক্সেস
SSH হলো সবচেয়ে গুরুত্বপূর্ণ টুল যা দিয়ে আপনি নিরাপদে রিমোট সার্ভারে লগইন করতে পারবেন এবং কমান্ড রান করতে পারবেন।
SSH কেন ব্যবহার করবেন?
- সিকিউর: সব ডেটা এনক্রিপ্টেড থাকে
- রিমোট এক্সেস: যেকোনো জায়গা থেকে সার্ভার কন্ট্রোল করা যায়
- অটোমেশন: স্ক্রিপ্ট দিয়ে অটোমেটিক কাজ করা যায়
SSH Key তৈরি করা
Password দিয়ে লগইন করার চেয়ে SSH Key অনেক বেশি নিরাপদ।
# SSH Key তৈরি করা
ssh-keygen -t rsa -b 4096 -C "rokib@example.com"
# নির্দিষ্ট নাম দিয়ে তৈরি করা
ssh-keygen -t rsa -f ~/.ssh/rokib_key
কী ফাইলের লোকেশন:
- Private Key:
~/.ssh/id_rsa(এটি কখনো কাউকে দেবেন না) - Public Key:
~/.ssh/id_rsa.pub(এটি সার্ভারে কপি করতে হবে)
পাবলিক কী সার্ভারে কপি করা
পদ্ধতি ১: অটোমেটিক (সহজ)
# সার্ভারে পাবলিক কী পাঠানো
ssh-copy-id rokib@192.168.1.100
# নির্দিষ্ট কী ফাইল দিয়ে
ssh-copy-id -i ~/.ssh/rokib_key.pub rokib@192.168.1.100
পদ্ধতি ২: ম্যানুয়াল
# ১. পাবলিক কী কপি করুন
cat ~/.ssh/id_rsa.pub
# ২. সার্ভারে লগইন করুন
ssh rokib@192.168.1.100
# ৩. authorized_keys ফাইলে পেস্ট করুন
echo "আপনার-পাবলিক-কী" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
SSH দিয়ে সার্ভারে কানেক্ট করা
# বেসিক লগইন
ssh rokib@192.168.1.100
# AWS EC2 ইনস্ট্যান্সে লগইন
ssh -i ~/.ssh/my-key.pem ubuntu@54.210.12.34
# নির্দিষ্ট পোর্ট দিয়ে লগইন
ssh -p 2222 rokib@192.168.1.100
# রিমোট কমান্ড রান করা (লগইন ছাড়াই)
ssh rokib@192.168.1.100 "ls -la /var/www"
প্রো টিপ: SSH Config ফাইল ব্যবহার করে শর্টকাট তৈরি করুন:
# ~/.ssh/config ফাইলে যোগ করুন
Host myserver
HostName 192.168.1.100
User rokib
IdentityFile ~/.ssh/rokib_key
Port 22
# এখন শুধু এটি লিখলেই হবে:
ssh myserver
SCP (Secure Copy Protocol) – ফাইল ট্রান্সফার
SCP দিয়ে আপনি SSH-এর মাধ্যমে নিরাপদে ফাইল কপি করতে পারবেন।
লোকাল থেকে রিমোট সার্ভারে ফাইল পাঠানো
# একটি ফাইল পাঠানো
scp myapp.zip rokib@192.168.1.100:/home/rokib/
# SSH কী দিয়ে ফাইল পাঠানো
scp -i ~/.ssh/my-key.pem app.tar.gz ubuntu@54.210.12.34:/home/ubuntu/
# পুরো ফোল্ডার পাঠানো (-r = recursive)
scp -r /local/project rokib@192.168.1.100:/home/rokib/projects/
রিমোট সার্ভার থেকে লোকালে ফাইল আনা
# একটি ফাইল ডাউনলোড করা
scp rokib@192.168.1.100:/var/log/app.log .
# পুরো ফোল্ডার ডাউনলোড করা
scp -r rokib@192.168.1.100:/home/rokib/backups ./local-backups/
# AWS থেকে ডাউনলোড
scp -i ~/.ssh/my-key.pem ubuntu@54.210.12.34:/home/ubuntu/data.sql .
বাস্তব উদাহরণ: ডেপ্লয়মেন্ট
# ১. লোকালে কোড বিল্ড করুন
npm run build
tar -czf dist.tar.gz dist/
# ২. সার্ভারে পাঠান
scp dist.tar.gz rokib@192.168.1.100:/var/www/
# ৩. সার্ভারে আনজিপ করুন
ssh rokib@192.168.1.100 "cd /var/www && tar -xzf dist.tar.gz"
curl – API টেস্টিং এবং HTTP রিকোয়েস্ট
curl হলো একটি শক্তিশালী টুল যা দিয়ে HTTP/HTTPS রিকোয়েস্ট পাঠানো যায়। API টেস্টিং এবং ডিবাগিং-এর জন্য অপরিহার্য।
GET রিকোয়েস্ট
# সিম্পল GET রিকোয়েস্ট
curl https://jsonplaceholder.typicode.com/posts/1
# শুধু HTTP হেডার দেখা
curl -I https://google.com
# রেসপন্স সুন্দরভাবে ফরম্যাট করা (jq দিয়ে)
curl https://api.github.com/users/rokib | jq
POST রিকোয়েস্ট
# JSON ডেটা পাঠানো
curl -X POST https://api.example.com/users \
-H "Content-Type: application/json" \
-d '{"name":"Rokib","email":"rokib@example.com"}'
# ফাইল আপলোড করা
curl -X POST -F "file=@document.pdf" \
https://api.example.com/upload
Authentication সহ রিকোয়েস্ট
# Bearer Token দিয়ে
curl -H "Authorization: Bearer YOUR_TOKEN" \
https://api.github.com/user
# Basic Auth দিয়ে
curl -u username:password https://api.example.com/data
বাস্তব উদাহরণ: API Health Check
# সার্ভার চালু আছে কিনা চেক করা
curl http://localhost:3000/health
# রেসপন্স টাইম মাপা
curl -w "@curl-format.txt" -o /dev/null -s http://api.example.com
# curl-format.txt ফাইলে লিখুন:
# time_total: %{time_total}s
wget – ফাইল ডাউনলোড টুল
wget দিয়ে ইন্টারনেট থেকে ফাইল ডাউনলোড করা যায়। বড় ফাইল বা পুরো ওয়েবসাইট ডাউনলোড করার জন্য উপযুক্ত।
বেসিক ডাউনলোড
# ফাইল ডাউনলোড করা
wget https://example.com/file.zip
# নির্দিষ্ট নাম দিয়ে সেভ করা
wget -O myfile.zip https://example.com/download.zip
# ব্যাকগ্রাউন্ডে ডাউনলোড করা
wget -b https://example.com/largefile.iso
ডাউনলোড রিজিউম করা
# ইন্টারাপ্টেড ডাউনলোড চালু রাখা
wget -c https://example.com/ubuntu-22.04.iso
বাস্তব উদাহরণ: সফটওয়্যার ইনস্টল
# Node.js ডাউনলোড করা
wget https://nodejs.org/dist/v18.16.0/node-v18.16.0-linux-x64.tar.xz
# আনজিপ করা
tar -xf node-v18.16.0-linux-x64.tar.xz
# Maven ডাউনলোড করা
wget https://dlcdn.apache.org/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.tar.gz
সম্পূর্ণ DevOps ওয়ার্কফ্লো উদাহরণ
ধরুন আপনি একটি Node.js অ্যাপ্লিকেশন AWS EC2-তে ডেপ্লয় করবেন:
ধাপ ১: SSH Key সেটআপ
# লোকাল মেশিনে SSH Key তৈরি করুন
ssh-keygen -t rsa -f ~/.ssh/aws-rokib-key
# পাবলিক কী AWS-তে আপলোড করুন (EC2 Console থেকে)
ধাপ ২: EC2 ইনস্ট্যান্সে কানেক্ট
# SSH দিয়ে লগইন
ssh -i ~/.ssh/aws-rokib-key.pem ubuntu@54.210.12.34
# সার্ভার আপডেট করুন
sudo apt update && sudo apt upgrade -y
ধাপ ৩: Node.js ইনস্টল করুন
# wget দিয়ে Node.js ডাউনলোড
wget https://nodejs.org/dist/v18.16.0/node-v18.16.0-linux-x64.tar.xz
# আনজিপ এবং ইনস্টল
tar -xf node-v18.16.0-linux-x64.tar.xz
sudo mv node-v18.16.0-linux-x64 /usr/local/nodejs
echo 'export PATH=/usr/local/nodejs/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
ধাপ ৪: অ্যাপ্লিকেশন ডেপ্লয়
# লোকাল মেশিনে কোড বিল্ড করুন
npm run build
tar -czf app.tar.gz dist/ package.json
# SCP দিয়ে সার্ভারে পাঠান
scp -i ~/.ssh/aws-rokib-key.pem app.tar.gz ubuntu@54.210.12.34:/home/ubuntu/
# সার্ভারে আনজিপ এবং রান করুন
ssh -i ~/.ssh/aws-rokib-key.pem ubuntu@54.210.12.34 << 'EOF'
cd /home/ubuntu
tar -xzf app.tar.gz
npm install --production
pm2 start dist/server.js
EOF
ধাপ ৫: হেলথ চেক
# curl দিয়ে API টেস্ট করুন
curl http://54.210.12.34:3000/health
# রেসপন্স দেখাবে:
# {"status":"ok","uptime":1234}
ধাপ ৬: ট্রাবলশুটিং
# নেটওয়ার্ক কানেক্টিভিটি চেক
ping 54.210.12.34
# রুট ট্রেস করা
traceroute 54.210.12.34
# লগ দেখা
ssh -i ~/.ssh/aws-rokib-key.pem ubuntu@54.210.12.34 "tail -f /var/log/app.log"
নেটওয়ার্কিং অ্যাডভান্সড কনসেপ্ট
IP Address বিস্তারিত
IPv4 স্ট্রাকচার: একটি IPv4 অ্যাড্রেস ৩২ বিটের হয়, যা ৪টি অক্টেট (বাইট) এ ভাগ করা থাকে।
192.168.1.10
└─┬─┘ └─┬─┘ └┬┘ └┬┘
│ │ │ │
│ │ │ └─ 4th octet (0-255)
│ │ └───── 3rd octet (0-255)
│ └────────── 2nd octet (0-255)
└──────────────── 1st octet (0-255)
কেন 0-255? কারণ ১ বাইট = ৮ বিট, এবং 2^8 = 256 (0 থেকে 255)
IP Address এর প্রকারভেদ:
-
Private IP (প্রাইভেট আইপি):
10.0.0.0থেকে10.255.255.255(Class A)172.16.0.0থেকে172.31.255.255(Class B)192.168.0.0থেকে192.168.255.255(Class C)- ইন্টারনেটে রাউট হয় না, শুধু লোকাল নেটওয়ার্কে ব্যবহার হয়
-
Public IP (পাবলিক আইপি):
- ইন্টারনেটে ইউনিক অ্যাড্রেস
- ISP থেকে পাওয়া যায়
- উদাহরণ:
8.8.8.8(Google DNS)
Subnet এবং Subnetting
Subnet কি? বড় নেটওয়ার্ককে ছোট ছোট অংশে ভাগ করাকে Subnetting বলে।
কেন Subnetting প্রয়োজন?
-
সিকিউরিটি: বিভিন্ন বিভাগকে আলাদা রাখা
Finance Dept: 192.168.1.0/24 HR Dept: 192.168.2.0/24 IT Dept: 192.168.3.0/24 -
পারফরম্যান্স: ছোট নেটওয়ার্কে কম ট্রাফিক, দ্রুত স্পিড
-
ম্যানেজমেন্ট: সহজে নেটওয়ার্ক পরিচালনা করা যায়
AWS VPC উদাহরণ:
VPC: 10.0.0.0/16 (65,536 IPs)
├── Public Subnet: 10.0.1.0/24 (256 IPs) - Web Servers
├── Private Subnet: 10.0.2.0/24 (256 IPs) - App Servers
└── DB Subnet: 10.0.3.0/24 (256 IPs) - Databases
CIDR নোটেশন বিস্তারিত
CIDR (Classless Inter-Domain Routing) হলো IP অ্যাড্রেস এবং সাবনেট মাস্ক লেখার আধুনিক পদ্ধতি।
ফর্মুলা: Total IPs = 2^(32 - CIDR)
কমন CIDR রেঞ্জ:
| CIDR | Subnet Mask | মোট IP | Usable IPs | ব্যবহার |
|---|---|---|---|---|
| /32 | 255.255.255.255 | 1 | 1 | সিঙ্গেল হোস্ট |
| /31 | 255.255.255.254 | 2 | 2 | Point-to-Point লিংক |
| /30 | 255.255.255.252 | 4 | 2 | রাউটার লিংক |
| /24 | 255.255.255.0 | 256 | 254 | স্ট্যান্ডার্ড LAN |
| /20 | 255.255.240.0 | 4,096 | 4,094 | মিডিয়াম নেটওয়ার্ক |
| /16 | 255.255.0.0 | 65,536 | 65,534 | বড় নেটওয়ার্ক |
ব্যবহারিক উদাহরণ:
# 192.168.1.0/24 মানে:
Network Address: 192.168.1.0
First Usable IP: 192.168.1.1
Last Usable IP: 192.168.1.254
Broadcast Address: 192.168.1.255
Total Hosts: 254
CIDR ক্যালকুলেশন:
/24 = 32 - 24 = 8 bits for hosts
2^8 = 256 total IPs
256 - 2 (network + broadcast) = 254 usable IPs
OSI Model বিস্তারিত
OSI (Open Systems Interconnection) মডেল ডেটা ট্রান্সমিশনের ৭টি লেয়ার বর্ণনা করে।
সম্পূর্ণ OSI Model:
| লেয়ার | নাম | ফাংশন | প্রোটোকল/উদাহরণ | DevOps-এ ব্যবহার |
|---|---|---|---|---|
| 7 | Application | ইউজার ইন্টারঅ্যাকশন | HTTP, HTTPS, FTP, SSH | API, Web Apps |
| 6 | Presentation | ডেটা এনক্রিপশন/ফরম্যাট | SSL/TLS, JPEG, ASCII | HTTPS, Certificates |
| 5 | Session | সেশন ম্যানেজমেন্ট | NetBIOS, RPC | Authentication |
| 4 | Transport | End-to-End ডেলিভারি | TCP, UDP | Port Numbers |
| 3 | Network | রাউটিং | IP, ICMP, ARP | IP Addressing |
| 2 | Data Link | ফিজিক্যাল অ্যাড্রেসিং | Ethernet, MAC | Switch, NIC |
| 1 | Physical | হার্ডওয়্যার ট্রান্সমিশন | Cables, Signals | Network Cables |
ডেটা ফ্লো উদাহরণ:
যখন আপনি https://api.example.com এ রিকোয়েস্ট পাঠান:
সেন্ডার সাইড (আপনার কম্পিউটার):
Layer 7 (Application): HTTP GET /api/users
↓
Layer 6 (Presentation): SSL/TLS এনক্রিপশন
↓
Layer 5 (Session): সেশন তৈরি
↓
Layer 4 (Transport): TCP Port 443 যোগ করা
↓
Layer 3 (Network): IP Address যোগ করা
↓
Layer 2 (Data Link): MAC Address যোগ করা
↓
Layer 1 (Physical): ইলেকট্রিক সিগন্যাল
রিসিভার সাইড (সার্ভার):
Layer 1 (Physical): সিগন্যাল রিসিভ
↓
Layer 2 (Data Link): MAC চেক করা
↓
Layer 3 (Network): IP চেক করা
↓
Layer 4 (Transport): Port 443 এ পাঠানো
↓
Layer 5 (Session): সেশন ভেরিফাই
↓
Layer 6 (Presentation): SSL/TLS ডিক্রিপ্ট
↓
Layer 7 (Application): HTTP রিকোয়েস্ট প্রসেস
DNS Resolution প্রক্রিয়া
যখন আপনি ব্রাউজারে google.com লেখেন, তখন কি হয়?
ধাপ ১: লোকাল ক্যাশ চেক
# আপনার কম্পিউটার প্রথমে লোকাল DNS ক্যাশ চেক করে
# Linux/Mac:
cat /etc/hosts
# Windows:
C:\Windows\System32\drivers\etc\hosts
ধাপ ২: DNS Resolver Query
আপনার কম্পিউটার
↓ (Query: google.com?)
DNS Resolver (ISP)
↓ (Query: google.com?)
Root DNS Server
↓ (Answer: .com নেমসার্ভার এখানে)
TLD Server (.com)
↓ (Answer: google.com নেমসার্ভার এখানে)
Authoritative DNS Server
↓ (Answer: 142.250.190.14)
আপনার কম্পিউটার (IP পেয়ে গেছে!)
ব্যবহারিক উদাহরণ:
# DNS Resolution দেখা
dig +trace google.com
# DNS ক্যাশ ক্লিয়ার করা (Mac)
sudo dscacheutil -flushcache
# DNS ক্যাশ ক্লিয়ার করা (Linux)
sudo systemd-resolve --flush-caches
TCP 3-Way Handshake বিস্তারিত
TCP কানেকশন স্থাপনের প্রক্রিয়া:
ভিজুয়াল প্রেজেন্টেশন:
Client Server
| |
| SYN (seq=100) |
|─────────────────────────────> |
| |
| SYN-ACK (seq=200, ack=101) |
| <─────────────────────────────|
| |
| ACK (seq=101, ack=201) |
|─────────────────────────────> |
| |
| Connection Established! |
বিস্তারিত ব্যাখ্যা:
-
SYN (Synchronize):
- ক্লায়েন্ট: “হ্যালো সার্ভার, আমি কানেক্ট করতে চাই। আমার sequence number হলো 100।”
- Flags: SYN=1
-
SYN-ACK (Synchronize-Acknowledge):
- সার্ভার: “হ্যালো ক্লায়েন্ট, আমি রেডি। আমি তোমার 100 পেয়েছি, পরেরটা 101 পাঠাও। আমার sequence number হলো 200।”
- Flags: SYN=1, ACK=1
-
ACK (Acknowledge):
- ক্লায়েন্ট: “পারফেক্ট! আমি তোমার 200 পেয়েছি, পরেরটা 201 আশা করছি। এখন ডেটা পাঠাচ্ছি।”
- Flags: ACK=1
tcpdump দিয়ে দেখা:
# TCP Handshake ক্যাপচার করা
sudo tcpdump -i any port 80 -n
# আউটপুট:
# 10:30:01.123456 IP 192.168.1.10.54321 > 93.184.216.34.80: Flags [S], seq 100
# 10:30:01.234567 IP 93.184.216.34.80 > 192.168.1.10.54321: Flags [S.], seq 200, ack 101
# 10:30:01.345678 IP 192.168.1.10.54321 > 93.184.216.34.80: Flags [.], ack 201
কানেকশন বন্ধ করা (4-Way Handshake):
Client Server
| FIN (seq=500) |
|─────────────────────────────> |
| ACK (ack=501) |
| <─────────────────────────────|
| FIN (seq=600) |
| <─────────────────────────────|
| ACK (ack=601) |
|─────────────────────────────> |
| Connection Closed! |
TCP vs UDP
| বৈশিষ্ট্য | TCP | UDP |
|---|---|---|
| Connection | Connection-oriented | Connectionless |
| Reliability | Guaranteed delivery | No guarantee |
| Speed | ধীর (handshake এর জন্য) | দ্রুত |
| Use Case | HTTP, SSH, FTP | DNS, Video Streaming |
| Header Size | 20 bytes | 8 bytes |
কখন কোনটি ব্যবহার করবেন?
TCP ব্যবহার করুন:
- File transfer (SCP, FTP)
- Web browsing (HTTP/HTTPS)
- Email (SMTP, IMAP)
- Database connections
UDP ব্যবহার করুন:
- Video streaming (YouTube, Netflix)
- Online gaming
- DNS queries
- VoIP calls
ব্যবহারিক উদাহরণ:
# TCP কানেকশন চেক করা
netstat -an | grep ESTABLISHED
# UDP পোর্ট চেক করা
netstat -anu
# নির্দিষ্ট পোর্টে TCP/UDP চেক
ss -tuln | grep :80
টুলস সামারি
| টুল | কাজ | উদাহরণ |
|---|---|---|
| ping | কানেক্টিভিটি চেক | ping google.com |
| traceroute | রুট ট্রেস | traceroute google.com |
| nslookup/dig | DNS চেক | dig google.com |
| ssh | রিমোট লগইন | ssh rokib@192.168.1.100 |
| scp | ফাইল কপি | scp file.txt rokib@server:/path/ |
| curl | API টেস্ট | curl https://api.example.com |
| wget | ফাইল ডাউনলোড | wget https://example.com/file.zip |
সারাংশ
এই টিউটোরিয়ালে আমরা শিখেছি:
- নেটওয়ার্কিং বেসিক্স: IP, DNS, Port, Ping, Traceroute
- SSH: সিকিউর রিমোট এক্সেস এবং কী-বেসড অথেন্টিকেশন
- SCP: নিরাপদ ফাইল ট্রান্সফার
- curl: API টেস্টিং এবং HTTP রিকোয়েস্ট
- wget: ফাইল ডাউনলোড
- রিয়েল-ওয়ার্ল্ড ওয়ার্কফ্লো: সম্পূর্ণ ডেপ্লয়মেন্ট প্রসেস
প্রো টিপ: এই টুলগুলো প্রতিদিন প্র্যাকটিস করুন। একটি ছোট প্রজেক্ট নিয়ে নিজে নিজে ডেপ্লয় করার চেষ্টা করুন। হাতে-কলমে শিখলে দ্রুত দক্ষ হবেন।