<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Getting Started with cURL]]></title><description><![CDATA[Getting Started with cURL]]></description><link>https://curlinfo.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Wed, 14 Oct 2026 02:22:28 GMT</lastBuildDate><atom:link href="https://curlinfo.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Understanding Network Devices]]></title><description><![CDATA[So you want to know how the internet gets to your house or office.
The internet is like a system that connects all these computers and servers.
When you are at home or at the office you are basically using the internet to do all sorts of things.
The ...]]></description><link>https://curlinfo.hashnode.dev/understanding-network-devices</link><guid isPermaLink="true">https://curlinfo.hashnode.dev/understanding-network-devices</guid><category><![CDATA[ChaiCode]]></category><dc:creator><![CDATA[Ranjeet Upadhyay]]></dc:creator><pubDate>Wed, 21 Jan 2026 10:16:13 GMT</pubDate><content:encoded><![CDATA[<h2 id="heading-so-you-want-to-know-how-the-internet-gets-to-your-house-or-office">So you want to know how the internet gets to your house or office.</h2>
<p>The internet is like a system that connects all these computers and servers.</p>
<p>When you are at home or at the office you are basically using the internet to do all sorts of things.</p>
<p>The internet reaches your home or office through something called an internet service provider.</p>
<p>This internet service provider is like a company that helps you get the internet.</p>
<p>They use special computers to connect you to the rest of the internet.</p>
<ul>
<li><p>They lay down cables under the ground or under the sea.</p>
</li>
<li><p>They use towers to send signals through the air.</p>
</li>
<li><p>They even use satellites up in space to help get the internet to you.</p>
</li>
</ul>
<p>The internet service provider helps you get the internet to your home or office so you can use it to do all the things you want to do on the internet.</p>
<p>The internet is really important for your home or office because it helps you stay connected to the rest of the world.</p>
<p>You can use the internet to talk to people watch videos and learn things.</p>
<p>So the internet is, like a system that helps you do all these things and it is really useful to have it at your home or office.</p>
<p>Internet access originates from an ISP (Internet Service Provider)</p>
<p>The Internet Service Provider gives people a way to get online using fiber, cable, DSL or cellular links. They use these Internet Service Provider links to connect people to the internet. The Internet Service Provider helps people get online with these kinds of links.</p>
<p>Inside a home or office there are networking devices that work together to:</p>
<p>Terminate the ISP connection</p>
<p>Route traffic</p>
<p>Distribute packets locally</p>
<p>Secure traffic</p>
<p>Scale traffic to servers</p>
<ol start="2">
<li>What is a Modem. How does a Modem connect your network to the internet?</li>
</ol>
<p>A Modem is an important thing that helps you get on the internet.</p>
<p>It does this by connecting your network to the internet.</p>
<p>You need a Modem to use the internet on your computer or phone.</p>
<p>The Modem connects your network to the internet so you can do things like watch videos and talk to people online.</p>
<p>This is because a Modem is what lets your network talk to the internet.</p>
<p>So if you want to be, on the internet you need a Modem to connect your network to the internet.</p>
<p>A modem is what connects your network to your internet service provider. This is how you get to use the internet from your home or office. Your modem connects your network to your internet service provider so you can browse the web and do all the things you need to do online.</p>
<p>This thing takes signals from your Internet Service Provider. Turns them into Ethernet or Internet Protocol traffic. It basically helps your Internet Service Provider signals work with Ethernet or Internet Protocol traffic. This is really helpful, for people who need to use Internet Service Provider signals and Ethernet or Internet Protocol traffic.</p>
<p>It operates at</p>
<p>Physical layer (signal conversion)</p>
<p>Data link layer (framing, depending on technology)</p>
<p>A modem:</p>
<p>Usually receives one public IP address from the ISP</p>
<p>Does not manage multiple devices</p>
<p>Does not route traffic</p>
<p>If you do not have a modem your network will not be able to communicate with the Internet Service Provider network. This is because the modem is what allows your network to talk to the Internet Service Provider network. Without the modem the Internet Service Provider network and your network cannot exchange information. You need a modem for your network to work with the Internet Service Provider network.</p>
<ol start="3">
<li>What is a Router and how the Router directs traffic on the internet. The Router is a device that helps the Router send data to the place. Think of the Router like a traffic cop the Router makes sure that the data gets to where it needs to go. The Router does this by looking at the address on the data and then sending it to the stop on the way, to its final destination. This is how the Router directs traffic on the internet.</li>
</ol>
<p>A Router is used to connect networks. This is really useful because it allows different networks to communicate with each other. The Router makes it possible for devices on one network to talk to devices on another network. So the Router is very important, for connecting networks.</p>
<p>It sits between</p>
<p>Your private network</p>
<p>The public internet</p>
<p>Responsibilities:</p>
<p>Routes packets based on IP addresses</p>
<p>Performs NAT (Network Address Translation)</p>
<p>Acts as the default gateway for devices</p>
<p>A router:</p>
<p>This thing lets multiple devices use the public internet address. It is really helpful because multiple devices can share one IP. This means that all these devices can access the internet using the public IP.</p>
<p>It figures out where the outgoing traffic should go. This thing is like a guide, for the traffic. The outgoing traffic needs to know where to go. This is what decides that for the outgoing traffic.</p>
<p>Receives incoming traffic and forwards it correctly</p>
<p>For backend engineers:</p>
<p>Routers are really important because they define the boundaries of a network. They basically decide what is part of the network and what is not. Routers define network boundaries. They do this by controlling the flow of data. This means that routers define network boundaries and help keep everything running smoothly.</p>
<p>Cloud VPC routing tables work like the routers you have at home. They help Cloud VPC figure out where to send traffic. Cloud VPC routing tables are really good at directing traffic to the place. When you use Cloud VPC routing tables you can control how traffic moves around Cloud VPC. Cloud VPC routing tables are very important, for making sure everything works properly in Cloud VPC.</p>
<ol start="4">
<li>Switch versus Hub: how local networks really work</li>
</ol>
<p>Local networks are made up of lots of parts.</p>
<p>The Switch and the Hub are two of these parts.</p>
<p>So what is the difference between a Switch and a Hub in networks?</p>
<p>Local networks use the Switch and the Hub to help them work.</p>
<p>The Switch and the Hub are important for networks.</p>
<p>They help the local networks do what they need to do.</p>
<p>When we talk about networks we are talking about the Switch and the Hub.</p>
<p>They are a part of how local networks actually work.</p>
<p>Understanding the Switch and the Hub is important for understanding networks.</p>
<p>The Switch and the Hub are used in networks every day.</p>
<p>So it is an idea to know how the Switch and the Hub work, in local networks.</p>
<p>Hub</p>
<p>Operates at the physical layer</p>
<p>Sends incoming data to all connected ports</p>
<p>No awareness of MAC addresses</p>
<p>Causes:</p>
<p>Unnecessary traffic</p>
<p>Collisions</p>
<p>Poor performance</p>
<p>Mostly obsolete</p>
<p>Switch</p>
<p>Operates at the data link layer</p>
<p>Maintains a MAC address table</p>
<p>Sends data only to the intended device</p>
<p>Benefits:</p>
<p>Efficient traffic flow</p>
<p>Reduced collisions</p>
<p>Better bandwidth utilization</p>
<p>Used in:</p>
<p>Offices</p>
<p>Data centers</p>
<p>Cloud infrastructure</p>
<p>These days modern networks use switches, not those hubs. Modern networks are really good, at sending information and they do this by using switches. This is because modern networks need to be fast and reliable and switches help them do that.</p>
<ol start="5">
<li>What is a Firewall. Why the Firewall is so important for security? The Firewall is like a gatekeeper that decides what can come into our computer or network and what has to stay out. The Firewall is the line of defence against hackers and viruses. We need the Firewall to protect our computer or network from people who want to cause trouble. The Firewall checks everything that tries to get in. Says yes or no. This is why the Firewall is so important for our security. We can think of the Firewall as a shield that keeps our computer or network safe. The Firewall is what keeps the guys out and lets the good guys in. So the Firewall is really important, for keeping our security strong.</li>
</ol>
<p>A Firewall is something that helps control the traffic that comes and goes from a computer. It does this based on some rules that are set up for the Firewall. The Firewall looks at the traffic. Then decides what to do with it based on these rules, for the Firewall.</p>
<p>It can. Deny the traffic based on certain things, like:</p>
<ul>
<li><p>The traffic</p>
</li>
<li><p>Where the traffic is coming from</p>
</li>
<li><p>Where the traffic is going to</p>
</li>
</ul>
<p>The traffic can be. Denied based on these things.</p>
<p>IP address</p>
<p>Port number</p>
<p>Protocol</p>
<p>Connection state</p>
<p>Firewall placement:</p>
<p>Between router and internal network</p>
<p>At server level (host firewall)</p>
<p>At cloud perimeter (security groups)</p>
<p>Responsibilities:</p>
<p>Prevent unauthorized access</p>
<p>Limit attack surface</p>
<p>Enforce security policies</p>
<p>For backend systems:</p>
<p>Firewalls are, like the guards that decide what services people can use and what services they cannot use. They look at each service. They say yes or no. The services that the firewalls say yes to are the ones that people can reach. Firewalls decide which services are reachable.</p>
<p>Firewalls that are not set up correctly can cause problems and shut down production. This is an issue, with firewalls. When firewalls are misconfigured they can stop production from working. Firewalls are supposed to help keep things running smoothly. Misconfigured firewalls can actually cause production outages.</p>
<ol start="6">
<li>What is a Load Balancer. Why do scalable systems need a Load Balancer?</li>
</ol>
<p>A Load Balancer is something that helps when a lot of people are using a website or a system at the time.</p>
<p>Scalable systems need a Load Balancer because it helps make sure that the system can handle a number of users.</p>
<p>When a system has a Load Balancer it can direct traffic to parts of the system so one part does not get too busy.</p>
<p>This helps the system run smoothly. It helps people get what they need quickly.</p>
<p>Scalable systems need a Load Balancer to keep everything running well and to make sure people can use the system when they need to.</p>
<p>A Load Balancer is very important, for systems because it helps the system work properly when a lot of people are using it.</p>
<p>A Load Balancer is really useful because it helps to distribute the traffic across different servers. This means that the Load Balancer is sending the traffic to servers so no single server gets overwhelmed, with too much traffic. The Load Balancer is doing this to make sure that the traffic is spread out evenly across all the servers. This way the Load Balancer and the servers can work together to handle a lot of traffic from people who are using the system. The main job of the Load Balancer is to distribute traffic across servers.</p>
<p>It prevents things from happening. The thing that it prevents is really important to think about when we're talking about this topic. It prevents the things. We should remember that it prevents these things so we can understand how it works. It prevents problems.</p>
<p>Single server overload</p>
<p>Single point of failure</p>
<p>Operates at:</p>
<p>Layer 4 (TCP/UDP)</p>
<p>Layer 7 (HTTP/HTTPS)</p>
<p>Responsibilities:</p>
<p>Traffic distribution</p>
<p>Health checks</p>
<p>Failover</p>
<p>In production systems:</p>
<p>Load balancers are like the people, at the door. They sit in front of the backend services. Help figure out where to send the traffic. The backend services are the ones that do all the work and the load balancers make sure they do not get too busy.</p>
<ul>
<li><p>They help spread the work around</p>
</li>
<li><p>This means the backend services can handle people at the same time</p>
</li>
</ul>
<p>The load balancers are very important because they help the backend services run smoothly. Load balancers and backend services work together to make sure everything runs well.</p>
<p>They are critical for high availability and scalability</p>
<ol start="7">
<li>So I was wondering how all these devices actually work together in a world setup. You know, like in an everyday situation. How do all these devices communicate with each other. Work together seamlessly. I mean it is really interesting to see how all these devices, like computers and phones and things can all be connected and work together in a world setup. All these devices they have to be able to talk to each other and share information. That is what makes it all work so well. So how do all these devices work together in a world setup that is what I want to know.</li>
</ol>
<p>Typical flow:</p>
<p>ISP → Modem</p>
<p>Modem → Router</p>
<p>Router → Firewall</p>
<p>Firewall → Switch</p>
<p>Switch → End devices / servers</p>
<p>Load balancer → Backend server pool</p>
<p>Each device has one job that it does. It is responsible, for doing that one thing.</p>
<p>Modem: ISP signal termination</p>
<p>Router: Network routing</p>
<p>Switch: Local packet delivery</p>
<p>Firewall: Traffic filtering</p>
<p>Load balancer: Traffic distribution</p>
<ol start="8">
<li>Relevance for backend and production systems</li>
</ol>
<p>The backend services need these things to work:</p>
<p>Correct routing</p>
<p>Open firewall rules</p>
<p>Load-balanced traffic</p>
<p>Understanding these devices helps with:</p>
<p>Debugging network issues</p>
<p>Designing scalable systems</p>
<p>Reading cloud architecture diagrams</p>
<p>Cloud equivalents:</p>
<p>Modem → ISP gateway</p>
<p>Router → VPC router</p>
<p>Switch → Virtual network</p>
<p>Firewall → Security groups / NACLs</p>
<p>Load balancer → ALB / NLB / ELB</p>
<ol start="9">
<li>Key takeaway</li>
</ol>
<p>Software systems do not work all by themselves. They need things to function properly. Software systems are, like a team that has to work with other teams to get the job done. Software systems rely on software systems and hardware to run smoothly. This is because software systems are not alone they are part of a system that includes many other things. Software systems need to talk to each other and share information to work correctly.</p>
<p>Every backend request passes through:</p>
<p>Routing</p>
<p>Switching</p>
<p>Security filtering</p>
<p>Load balancing</p>
<p>Understanding how these devices work makes you feel really smart, about these devices. It is pretty cool to learn about these devices. How they do what they do with these devices.</p>
<p>Better at debugging</p>
<p>Better at system design</p>
<p>More production-ready as an engineer</p>
]]></content:encoded></item><item><title><![CDATA[Getting Started with cURL]]></title><description><![CDATA[1. What is a Server

A server is a computer on the internet that stores data or performs work for us

Websites, APIs, and apps all live on servers

Whenever you:

Open a website

Submit a form

Fetch data from an API  you are talking to a server



T...]]></description><link>https://curlinfo.hashnode.dev/getting-started-with-curl</link><guid isPermaLink="true">https://curlinfo.hashnode.dev/getting-started-with-curl</guid><category><![CDATA[ChaiCode]]></category><dc:creator><![CDATA[Ranjeet Upadhyay]]></dc:creator><pubDate>Wed, 21 Jan 2026 10:00:57 GMT</pubDate><content:encoded><![CDATA[<h1 id="heading-1-what-is-a-server">1. What is a Server</h1>
<ul>
<li><p>A <strong>server</strong> is a computer on the internet that stores data or performs work for us</p>
</li>
<li><p>Websites, APIs, and apps all live on servers</p>
</li>
<li><p>Whenever you:</p>
<ul>
<li><p>Open a website</p>
</li>
<li><p>Submit a form</p>
</li>
<li><p>Fetch data from an API<br />  you are <strong>talking to a server</strong></p>
</li>
</ul>
</li>
<li><p>To build backend systems, programmers must <strong>send requests to servers and understand responses</strong></p>
</li>
</ul>
<hr />
<h2 id="heading-2-what-is-curl">2. What is cURL</h2>
<ul>
<li><p><strong>cURL</strong> is a command-line tool used to <strong>send messages to a server</strong></p>
</li>
<li><p>It works from the <strong>terminal</strong>, not a browser</p>
</li>
<li><p>cURL can:</p>
<ul>
<li><p>Ask a server for data</p>
</li>
<li><p>Send data to a server</p>
</li>
<li><p>Show the server’s response clearly</p>
</li>
</ul>
</li>
<li><p>Think of cURL as:</p>
<ul>
<li><em>“A browser without buttons, images, or UI”</em></li>
</ul>
</li>
</ul>
<hr />
<h2 id="heading-3-why-programmers-need-curl">3. Why programmers need cURL</h2>
<ul>
<li><p>Browsers <strong>hide technical details</strong></p>
</li>
<li><p>Programmers need to see:</p>
<ul>
<li><p>What request is actually sent</p>
</li>
<li><p>What response comes back</p>
</li>
</ul>
</li>
<li><p>cURL helps in:</p>
<ul>
<li><p>Testing APIs</p>
</li>
<li><p>Debugging backend services</p>
</li>
<li><p>Verifying server responses</p>
</li>
<li><p>Learning how HTTP really works</p>
</li>
</ul>
</li>
<li><p>cURL is:</p>
<ul>
<li><p>Lightweight</p>
</li>
<li><p>Available on almost all systems</p>
</li>
<li><p>Used in real backend workflows</p>
</li>
</ul>
</li>
</ul>
<hr />
<h2 id="heading-4-making-your-first-request-using-curl">4. Making your first request using cURL</h2>
<h3 id="heading-the-simplest-possible-command">The simplest possible command</h3>
<ul>
<li><p>This command:</p>
<ul>
<li><p>Sends a request to the server at <a target="_blank" href="http://example.com"><code>example.com</code></a></p>
</li>
<li><p>Asks for the webpage</p>
</li>
</ul>
</li>
<li><p>The server sends back:</p>
<ul>
<li>HTML content of the page</li>
</ul>
</li>
<li><p>cURL prints the response <strong>directly in the terminal</strong></p>
</li>
</ul>
<p>→ No flags, no complexity just <strong>request → response</strong></p>
<hr />
<h2 id="heading-5-understanding-request-and-response">5. Understanding request and response</h2>
<h3 id="heading-what-curl-sends">What cURL sends</h3>
<ul>
<li><p>Method: <code>GET</code></p>
</li>
<li><p>URL: where the server lives</p>
</li>
<li><p>Headers: It handle basic information automatically</p>
</li>
</ul>
<h3 id="heading-what-curl-receives">What cURL receives</h3>
<ul>
<li><p><strong>Status code</strong></p>
<ul>
<li><p><code>200</code> → Success</p>
</li>
<li><p><code>404</code> → Not Found</p>
</li>
<li><p><code>500</code> → Server Error</p>
</li>
</ul>
</li>
<li><p><strong>Data</strong></p>
<ul>
<li>HTML, JSON, or plain text</li>
</ul>
</li>
<li><p><strong>Headers</strong></p>
<ul>
<li>Metadata about the response</li>
</ul>
</li>
</ul>
<p><img src="https://tse2.mm.bing.net/th/id/OIP.aaOR4B-LkzAqWLLbIf4QQwHaEy?w=474&amp;h=379&amp;c=7&amp;p=0" alt="https://www.opencsf.org/Books/csf/html/_images/CSF-Images.4.7.png" class="image--center mx-auto" /></p>
<p><img src="https://media.geeksforgeeks.org/wp-content/uploads/20210905091508/ImageOfHTTPRequestResponse-660x374.png" alt="https://media.geeksforgeeks.org/wp-content/uploads/20210905091508/ImageOfHTTPRequestResponse-660x374.png" class="image--center mx-auto" /></p>
<p><img src="https://tse4.mm.bing.net/th/id/OIP.wN31UgfKFwOV5V8ONGfeuwHaDR?w=474&amp;h=379&amp;c=7&amp;p=0" alt="https://www.researchgate.net/publication/356862193/figure/fig1/AS%3A1098796406714417%401638984886808/Gambar-4-Traditional-Client-Server-Request-Response-Cycle-Figure-4-Shows-the.png" class="image--center mx-auto" /></p>
<hr />
<h2 id="heading-6-using-curl-to-talk-to-apis">6. Using cURL to talk to APIs</h2>
<h3 id="heading-what-is-an-api-in-simple-terms">What is an API in simple terms</h3>
<ul>
<li><p>An API is a server endpoint that returns <strong>data</strong>, not webpages</p>
</li>
<li><p>APIs usually return <strong>JSON</strong></p>
</li>
</ul>
<h3 id="heading-example-get-request-to-an-api">Example: GET request to an API</h3>
<ul>
<li><p>Server responds with structured data</p>
</li>
<li><p>No UI, only raw information</p>
</li>
<li><p>This is exactly how backend services communicate</p>
</li>
</ul>
<hr />
<h2 id="heading-7-introducing-post">7. Introducing POST</h2>
<h3 id="heading-when-get-is-not-enough">When GET is not enough</h3>
<ul>
<li><p>GET → ask for data</p>
</li>
<li><p>POST → send data to the server</p>
</li>
</ul>
<h3 id="heading-simple-post-idea">Simple POST idea</h3>
<ul>
<li><p>You are:</p>
<ul>
<li><p>Sending data</p>
</li>
<li><p>Expecting a response (success or failure)</p>
</li>
</ul>
</li>
<li><p>POST is used for:</p>
<ul>
<li><p>Login</p>
</li>
<li><p>Form submission</p>
</li>
<li><p>Creating records</p>
</li>
</ul>
</li>
</ul>
<p>→ Details come later — focus on <strong>purpose</strong>, not syntax</p>
<hr />
<h2 id="heading-8-browser-request-vs-curl-request">8. Browser request vs cURL request</h2>
<ul>
<li><p>Browser:</p>
<ul>
<li><p>Automatically sends requests</p>
</li>
<li><p>Renders HTML</p>
</li>
<li><p>Hides request details</p>
</li>
</ul>
</li>
<li><p>cURL:</p>
<ul>
<li><p>You send requests manually</p>
</li>
<li><p>No rendering</p>
</li>
<li><p>Full visibility of server response</p>
</li>
</ul>
</li>
</ul>
<p><img src="https://miro.medium.com/v2/resize%3Afit%3A1400/1%2ASgkHt0DBnVFkazz3_eLRDw.png" alt="https://miro.medium.com/v2/resize%3Afit%3A1400/1%2ASgkHt0DBnVFkazz3_eLRDw.png" class="image--center mx-auto" /></p>
<p><img src="https://capsquery.com/wp-content/uploads/2025/01/REST-vs-Web-API-3.png" alt="https://capsquery.com/wp-content/uploads/2025/01/REST-vs-Web-API-3.png" /></p>
<p><img src="https://crawlbase.com/blog/how-to-send-get-requests-with-curl/curl-get-request-options.jpg" alt="https://crawlbase.com/blog/how-to-send-get-requests-with-curl/curl-get-request-options.jpg" /></p>
<hr />
<h2 id="heading-9-common-mistakes-beginners-make-with-curl">9. Common mistakes beginners make with cURL</h2>
<ul>
<li><p>Expecting formatted output like a browser</p>
</li>
<li><p>Forgetting that cURL shows <strong>raw data</strong></p>
</li>
<li><p>Mixing GET and POST concepts</p>
</li>
<li><p>Using too many flags too early</p>
</li>
<li><p>Assuming errors mean cURL is broken (often the server isn’t responding as expected)</p>
</li>
</ul>
<p>→ Errors are learning signals, not failures</p>
<hr />
<h2 id="heading-10-where-curl-fits-in-backend-development">10. Where cURL fits in backend development</h2>
<ul>
<li><p>Used to:</p>
<ul>
<li><p>Test APIs before frontend exists</p>
</li>
<li><p>Debug production issues</p>
</li>
<li><p>Verify authentication and data flow</p>
</li>
</ul>
</li>
<li><p>Backend engineers use cURL to:</p>
<ul>
<li><p>Reproduce bugs</p>
</li>
<li><p>Inspect server behavior</p>
</li>
<li><p>Validate endpoints</p>
</li>
</ul>
</li>
<li><p>Learning cURL builds:</p>
<ul>
<li><p>Strong HTTP fundamentals</p>
</li>
<li><p>Confidence in backend communication</p>
</li>
</ul>
</li>
</ul>
<hr />
<h2 id="heading-11-core-idea-to-remember">11. Core idea to remember</h2>
<ul>
<li><p>Backend development is <strong>server communication</strong></p>
</li>
<li><p>cURL is the <strong>simplest, clearest way</strong> to learn that communication</p>
</li>
<li><p>Mastering cURL means:</p>
<ul>
<li><p>You understand how the web really works</p>
</li>
<li><p>You are no longer dependent on tools hiding details</p>
</li>
</ul>
</li>
</ul>
]]></content:encoded></item></channel></rss>