<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: hemanlinux</title>
    <description>The latest articles on DEV Community by hemanlinux (@hemanlinux).</description>
    <link>https://dev.to/hemanlinux</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F978950%2F5b24f513-e1cc-45b2-8c04-72310a4dbfea.png</url>
      <title>DEV Community: hemanlinux</title>
      <link>https://dev.to/hemanlinux</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/hemanlinux"/>
    <language>en</language>
    <item>
      <title>AI news</title>
      <dc:creator>hemanlinux</dc:creator>
      <pubDate>Sat, 09 Mar 2024 15:04:07 +0000</pubDate>
      <link>https://dev.to/hemanlinux/ai-news-3lpa</link>
      <guid>https://dev.to/hemanlinux/ai-news-3lpa</guid>
      <description>&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
      &lt;div class="c-embed__cover"&gt;
        &lt;a href="https://www.howtouselinux.com/web-stories/google-engineer-stole-ai-tech-for-chinese-firms" class="c-link s:max-w-50 align-middle" rel="noopener noreferrer"&gt;
          &lt;img alt="" src="https://res.cloudinary.com/practicaldev/image/fetch/s--tGnE5Y4D--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://www.howtouselinux.com/wp-content/uploads/2024/03/cropped-google.jpg" height="853" class="m-0" width="640"&gt;
        &lt;/a&gt;
      &lt;/div&gt;
    &lt;div class="c-embed__body"&gt;
      &lt;h2 class="fs-xl lh-tight"&gt;
        &lt;a href="https://www.howtouselinux.com/web-stories/google-engineer-stole-ai-tech-for-chinese-firms" rel="noopener noreferrer" class="c-link"&gt;
          Google engineer stole AI tech for Chinese firms - howtouselinux
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;p class="truncate-at-3"&gt;
          Google engineer stole AI tech for Chinese firms Google engineer stole AI tech for Chinese firms Linwei Ding, a former Google engineer, faces arrest for stealing AI trade secrets, risking 40 years in prison. Learn more Accused of transferring over 500 sensitive Google files to his personal account, Ding breaches the company’s trust. Learn more …
        &lt;/p&gt;
      &lt;div class="color-secondary fs-s flex items-center"&gt;
          &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://res.cloudinary.com/practicaldev/image/fetch/s--1WEqz0Gs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://www.howtouselinux.com/wp-content/uploads/2023/09/cropped-howtouselinux-logo-32x32.jpeg" width="32" height="32"&gt;
        howtouselinux.com
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>ai</category>
    </item>
    <item>
      <title>4 Essential Strategies for Efficient Kubernetes Cluster Management</title>
      <dc:creator>hemanlinux</dc:creator>
      <pubDate>Mon, 04 Mar 2024 08:35:49 +0000</pubDate>
      <link>https://dev.to/hemanlinux/4-essential-strategies-for-efficient-kubernetes-cluster-management-99l</link>
      <guid>https://dev.to/hemanlinux/4-essential-strategies-for-efficient-kubernetes-cluster-management-99l</guid>
      <description>&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
      &lt;div class="c-embed__cover"&gt;
        &lt;a href="https://www.howtouselinux.com/web-stories/4-essential-strategies-for-efficient-kubernetes-cluster-management" class="c-link s:max-w-50 align-middle" rel="noopener noreferrer"&gt;
          &lt;img alt="" src="https://res.cloudinary.com/practicaldev/image/fetch/s--kaNmUea2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://www.howtouselinux.com/wp-content/uploads/2024/03/cropped-k8s.webp" height="853" class="m-0" width="640"&gt;
        &lt;/a&gt;
      &lt;/div&gt;
    &lt;div class="c-embed__body"&gt;
      &lt;h2 class="fs-xl lh-tight"&gt;
        &lt;a href="https://www.howtouselinux.com/web-stories/4-essential-strategies-for-efficient-kubernetes-cluster-management" rel="noopener noreferrer" class="c-link"&gt;
          4 Essential Strategies for Efficient Kubernetes Cluster Management - howtouselinux
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;p class="truncate-at-3"&gt;
          4 Essential Strategies for Efficient Kubernetes Cluster Management 4 Essential Strategies for Efficient Kubernetes Cluster Management Learn more Implement Automated Monitoring and Alerts Tip 1 Learn more Cloud Banner Utilize tools like Prometheus for monitoring cluster metrics and Grafana for visualizing the data. Learn more Adopt a GitOps Workflow Tip 2 Learn more Cloud Banner …
        &lt;/p&gt;
      &lt;div class="color-secondary fs-s flex items-center"&gt;
          &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://res.cloudinary.com/practicaldev/image/fetch/s--1WEqz0Gs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://www.howtouselinux.com/wp-content/uploads/2023/09/cropped-howtouselinux-logo-32x32.jpeg" width="32" height="32"&gt;
        howtouselinux.com
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>kubernetes</category>
      <category>cloud</category>
      <category>beginners</category>
      <category>devops</category>
    </item>
    <item>
      <title>Check file size in Ubuntu</title>
      <dc:creator>hemanlinux</dc:creator>
      <pubDate>Sat, 04 Mar 2023 13:02:19 +0000</pubDate>
      <link>https://dev.to/hemanlinux/check-file-size-in-ubuntu-51pj</link>
      <guid>https://dev.to/hemanlinux/check-file-size-in-ubuntu-51pj</guid>
      <description>&lt;h1&gt;
  
  
  Introduction
&lt;/h1&gt;

&lt;p&gt;Linux is one of the most popular operating systems in the world. It is Unix-like, and it is also open-source. Quite a big percentage of developers use Linux because it can be customized in so many ways.&lt;/p&gt;

&lt;p&gt;What's cool about Linux is its command line. Every 'hackers' paradise. There are a ton of commands. &lt;/p&gt;

&lt;p&gt;There is probably a command for almost anything that you want to do. For example what if you wanted to get the size of a directory? Well luckily for you there is a command for that. In this post, we are going to talk about that command and see what it can offer.&lt;/p&gt;

&lt;p&gt;Reference:  &lt;a href="https://www.howtouseubuntu.com/filesystem/how-to-check-file-size-in-ubuntu-command/" rel="noopener noreferrer"&gt;3 ways to get the size of a file in Ubuntu&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  The  &lt;code&gt;du&lt;/code&gt;  command
&lt;/h1&gt;

&lt;p&gt;This command lets the user get a quick view of the  &lt;strong&gt;disk usage&lt;/strong&gt;. The best way to use it is by giving it the directory you want to see the size of. It should look a little something like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;du directory_name  

// output  
2314    directory_name
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This will give you the size of all the files and at the very end, it will give you the size of the directory itself. You could point out the full path, or you could just give the name of the directory you want to see if you are already on the same path.&lt;/p&gt;

&lt;p&gt;But we could make this even easier just b adding 2  &lt;strong&gt;flags&lt;/strong&gt;. Flags help the command change its behavior. For the  &lt;code&gt;du&lt;/code&gt;  command we could add the flags  &lt;code&gt;-s&lt;/code&gt;  and  &lt;code&gt;-h&lt;/code&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;-s&lt;/code&gt;  stands for  &lt;strong&gt;summarize&lt;/strong&gt;  and it will show you only the total  size of the directory, without all those files popping up on your screen.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;-h&lt;/code&gt;  stands for  &lt;strong&gt;human-readable&lt;/strong&gt;  and it will convert the size so that you can read it easier. Just by running the command without the  &lt;code&gt;-h&lt;/code&gt;  flag doesn't specify you a unit of measurement.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So now to get the best of this command, you should run it like this with the  &lt;code&gt;-s&lt;/code&gt;  and  &lt;code&gt;-h&lt;/code&gt;  flags:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;du -sh directory_name  

// output  
44.5M   directory_name
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And if you wanted to see all of the directories sizes, you could just run this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;du -sh ./*  

// output  
12.2M   dir1  
 2.5M   dir2  
  55M   dir3
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Another thing you can do is use pipe(&lt;code&gt;|&lt;/code&gt;) and sort them by size, which will make it even easier for you to see their sizes. What  &lt;code&gt;|&lt;/code&gt;  does is get the output from the command behind it and add it into the input of the command after it. So to sort the directories by size just run the following command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;du -sh ./* | sort -h  

// output 
  55M   dir3  
12.2M   dir1  
 2.5M   dir2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;This is a pretty useful command that I think everybody should know, just because of how short and easy it is. I hope that this post has helped you and I wish you happy coding.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.howtouselinux.com/subscribe" rel="noopener noreferrer"&gt;Follow us on howtouselinux website to get the latest Linux updates, expert insights, and practical guides.&lt;/a&gt;&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>defi</category>
      <category>web3</category>
      <category>gaming</category>
    </item>
    <item>
      <title>du command or df command?</title>
      <dc:creator>hemanlinux</dc:creator>
      <pubDate>Mon, 19 Dec 2022 11:47:14 +0000</pubDate>
      <link>https://dev.to/hemanlinux/du-command-or-df-command-cfi</link>
      <guid>https://dev.to/hemanlinux/du-command-or-df-command-cfi</guid>
      <description>&lt;h3&gt;
  
  
  du command
&lt;/h3&gt;

&lt;p&gt;The &lt;code&gt;du&lt;/code&gt; command is a Linux utility that &lt;a href="https://www.howtouselinux.com/post/check-file-size-in-linux" rel="noopener noreferrer"&gt;estimates the space used by a file or directory&lt;/a&gt; and displays the sizes in a human-readable format. Here are some common options you can use with &lt;code&gt;du&lt;/code&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;code&gt;-a&lt;/code&gt; or &lt;code&gt;--all&lt;/code&gt;: show sizes of directories and files, including hidden files&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;-b&lt;/code&gt; or &lt;code&gt;--bytes&lt;/code&gt;: display sizes in bytes&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;-c&lt;/code&gt; or &lt;code&gt;--total&lt;/code&gt;: display a grand total of all the file sizes&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;-h&lt;/code&gt; or &lt;code&gt;--human-readable&lt;/code&gt;: display sizes in a human-readable format (e.g., 1K 234M 2G)&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;-s&lt;/code&gt; or &lt;code&gt;--summarize&lt;/code&gt;: display only a total for each argument&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;--exclude=PATTERN&lt;/code&gt;: exclude files and directories that match the PATTERN specified&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;--exclude-from=FILE&lt;/code&gt;: exclude patterns listed in the specified FILE&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here are some examples of how you can use &lt;code&gt;du&lt;/code&gt;:&lt;/p&gt;

&lt;p&gt;To show the sizes of all files and directories in the current directory, including hidden files:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;du -a&lt;/code&gt; &lt;/p&gt;

&lt;p&gt;To display the sizes of all files and directories in the &lt;code&gt;/var&lt;/code&gt; directory in human-readable format:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;du -sh /var&lt;/code&gt; &lt;/p&gt;

&lt;p&gt;To display the sizes of all files and directories in the current directory, excluding files and directories that match the pattern &lt;code&gt;*.tmp&lt;/code&gt;:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;du -a --exclude='*.tmp'&lt;/code&gt; &lt;/p&gt;

&lt;h3&gt;
  
  
  df command
&lt;/h3&gt;

&lt;p&gt;The &lt;code&gt;df&lt;/code&gt; command is a Linux utility that &lt;a href="https://www.redhat.com/sysadmin/Linux-df-command" rel="noopener noreferrer"&gt;displays information about the available and used disk space&lt;/a&gt; on a file system. Here are some common options you can use with &lt;code&gt;df&lt;/code&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;code&gt;-a&lt;/code&gt; or &lt;code&gt;--all&lt;/code&gt;: include pseudo, duplicate, and inaccessible file systems&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;-B&lt;/code&gt; or &lt;code&gt;--block-size=SIZE&lt;/code&gt;: use SIZE-byte blocks&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;-h&lt;/code&gt; or &lt;code&gt;--human-readable&lt;/code&gt;: display sizes in a human-readable format (e.g., 1K 234M 2G)&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;-H&lt;/code&gt; or &lt;code&gt;--si&lt;/code&gt;: like &lt;code&gt;-h&lt;/code&gt;, but use powers of 1000 not 1024&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;-i&lt;/code&gt; or &lt;code&gt;--inodes&lt;/code&gt;: display inode information&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;-k&lt;/code&gt; or &lt;code&gt;--kilobytes&lt;/code&gt;: display sizes in kilobytes&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;-l&lt;/code&gt; or &lt;code&gt;--local&lt;/code&gt;: limit the output to local file systems&lt;/li&gt;
&lt;li&gt;  &lt;code&gt;-T&lt;/code&gt; or &lt;code&gt;--print-type&lt;/code&gt;: display the file system type&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here are some examples of how you can use &lt;code&gt;df&lt;/code&gt;:&lt;/p&gt;

&lt;p&gt;To display information about all mounted file systems:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;df -h&lt;/code&gt; &lt;/p&gt;

&lt;p&gt;To display information about the file system that contains the current directory, in human-readable format:&lt;/p&gt;

&lt;p&gt;Copy code&lt;/p&gt;

&lt;p&gt;&lt;code&gt;df -h .&lt;/code&gt; &lt;/p&gt;

&lt;h3&gt;
  
  
  what is the difference between du and df command ?
&lt;/h3&gt;

&lt;p&gt;The &lt;code&gt;du&lt;/code&gt; command is used to estimate the space used by a file or directory, while the &lt;code&gt;df&lt;/code&gt; command is used to display information about the available and used disk space on a file system.&lt;/p&gt;

&lt;p&gt;One key difference between these two commands is the level of granularity at which they operate. &lt;code&gt;du&lt;/code&gt; examines individual files and directories and displays the sizes of each, while &lt;code&gt;df&lt;/code&gt; provides an overview of the entire file system or a specific mounted file system.&lt;/p&gt;

&lt;p&gt;I hope this helps clarify the difference between these two commands. Let me know if you have any questions.a&lt;/p&gt;

</description>
      <category>emptystring</category>
    </item>
    <item>
      <title>what does disk iops mean and how to check it?</title>
      <dc:creator>hemanlinux</dc:creator>
      <pubDate>Sun, 18 Dec 2022 13:57:10 +0000</pubDate>
      <link>https://dev.to/hemanlinux/what-does-disk-iops-mean-and-how-to-check-it-44e7</link>
      <guid>https://dev.to/hemanlinux/what-does-disk-iops-mean-and-how-to-check-it-44e7</guid>
      <description>&lt;h2&gt;
  
  
  what does IOPS mean?
&lt;/h2&gt;

&lt;p&gt;IOPS stands for "Input/Output Operations Per Second," and it is a measure of the performance of a storage device, such as a hard disk or a solid-state drive (SSD). It refers to the number of read and write operations that a storage device can perform in a given second.&lt;/p&gt;

&lt;p&gt;The workload that a flash disk can support depends on the specific device and its capabilities. In general, SSDs tend to have higher IOPS than traditional hard disks, and they are able to handle more workload. However, there is a wide range of performance among different SSDs, and the specific workload that a particular SSD can support will depend on its design and specifications.&lt;/p&gt;

&lt;p&gt;For example, a high-end SSD designed for use in a server environment may be able to handle hundreds of thousands of IOPS, while a consumer-grade SSD may be limited to a few tens of thousands of IOPS. In general, it is important to consider the IOPS requirements of your workload when selecting a storage device, in order to ensure that it can perform at the necessary level.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to check disk IOPS in Linux
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt; Use the &lt;code&gt;iostat&lt;/code&gt; command: The &lt;code&gt;iostat&lt;/code&gt; command can be used to monitor the I/O performance of a system, including the IOPS of individual disks. To see the IOPS of a specific disk, use the &lt;code&gt;-x&lt;/code&gt; flag and specify the disk name, like this:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;code&gt;iostat -xk /dev/sda&lt;/code&gt; &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Use the &lt;code&gt;hdparm&lt;/code&gt; command: The &lt;code&gt;hdparm&lt;/code&gt; command can be used to retrieve various information about a disk, including its IOPS. To get the IOPS of a disk, use the &lt;code&gt;-t&lt;/code&gt; flag and specify the disk name, like this:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;code&gt;hdparm -t /dev/sda&lt;/code&gt; &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Use the &lt;code&gt;fio&lt;/code&gt; tool: The &lt;code&gt;fio&lt;/code&gt; tool is a flexible I/O testing tool that can be used to measure the IOPS of a disk. To use it, create a configuration file with the desired test parameters, and then run the &lt;code&gt;fio&lt;/code&gt; command with the configuration file. For example:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;code&gt;fio iops-test.conf&lt;/code&gt; &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Use a benchmarking tool: There are several benchmarking tools available that can be used to measure the IOPS of a disk. One popular option is &lt;code&gt;Bonnie++&lt;/code&gt;, which is a suite of utilities for testing the performance of a filesystem. To use it, install the &lt;code&gt;bonnie++&lt;/code&gt; package and then run the &lt;code&gt;bonnie++&lt;/code&gt; command with the desired options. For example:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;code&gt;bonnie++ -d /mnt -n 0:1:0 -r 2048 -s 8G -x 1&lt;/code&gt; &lt;/p&gt;

&lt;p&gt;These are just a few examples of the ways that you can check the IOPS of a disk in Linux. There are many other tools and techniques that can be used for this purpose.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.howtouselinux.com/subscribe" rel="noopener noreferrer"&gt;Follow us on howtouselinux website to get the latest Linux updates, expert insights, and practical guides.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Reference:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.howtouselinux.com/post/check-disk-iops-in-linux" rel="noopener noreferrer"&gt;4 ways to check disk iops in Linux&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/performance_tuning_guide/sect-red_hat_enterprise_linux-performance_tuning_guide-storage_and_file_systems-monitoring_and_diagnosing_performance_problems" rel="noopener noreferrer"&gt;storage monitoring guide from redhat&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>discuss</category>
      <category>programming</category>
    </item>
    <item>
      <title>understanding network interface</title>
      <dc:creator>hemanlinux</dc:creator>
      <pubDate>Sat, 17 Dec 2022 08:23:34 +0000</pubDate>
      <link>https://dev.to/hemanlinux/understanding-network-interface-40f5</link>
      <guid>https://dev.to/hemanlinux/understanding-network-interface-40f5</guid>
      <description>&lt;p&gt;This post focuses on the very essential takeaways on linux network interfaces from my learnings. This comes handy when you are working with the ecosystem of Containers , Kubernetes (Azure Kubernetes Service, Amazon EKS) with a mix of WireGuard (Encryption) and Network Policy (Calico).&lt;/p&gt;

&lt;h1&gt;
  
  
  What is Network Interface ?
&lt;/h1&gt;

&lt;p&gt;A  &lt;strong&gt;&lt;em&gt;network&lt;/em&gt;&lt;/strong&gt;  &lt;strong&gt;&lt;em&gt;interface&lt;/em&gt;&lt;/strong&gt;  is a  &lt;strong&gt;software&lt;/strong&gt;  &lt;strong&gt;interface&lt;/strong&gt;  to a  &lt;strong&gt;networking&lt;/strong&gt;  &lt;strong&gt;hardware&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A &lt;a href="https://www.howtouselinux.com/post/linux-command-find-network-interface"&gt;network interface&lt;/a&gt; is how the kernel links up the software side of networking to the hardware side.&lt;/p&gt;

&lt;p&gt;Linux kernel distinguishes between two types of network interfaces:  &lt;em&gt;physical&lt;/em&gt;  and  &lt;em&gt;virtual&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Physical network interface represents an actual network hardware device. This is typically  &lt;code&gt;eth0&lt;/code&gt;  interface, which represents Ethernet network card.&lt;/p&gt;

&lt;p&gt;Virtual network interface doesn’t represent any hardware device and is usually linked to one.&lt;/p&gt;

&lt;p&gt;There are different kinds of virtual interfaces e.g. Loopback, bridges, VLANs, tunnel interfaces and so on but that is not discussed in this post.&lt;/p&gt;

&lt;p&gt;The  &lt;strong&gt;ifconfig or ip&lt;/strong&gt; commands allows us to configure network interfaces. This post uses  &lt;strong&gt;ip&lt;/strong&gt;  command.&lt;/p&gt;

&lt;p&gt;I have created an Amazon Linux instance of type  &lt;strong&gt;t3.micro in AWS&lt;/strong&gt; and connected to it to take as a concrete example.&lt;/p&gt;

&lt;h1&gt;
  
  
  Useful commands for dealing with Network Interfaces
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;To show network interface information for all interfaces&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;$ ip link show&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--hVbGm2gF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AjtE6fhyDHy0oubUsOUyo9g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--hVbGm2gF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AjtE6fhyDHy0oubUsOUyo9g.png" alt="" width="880" height="103"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This shows  &lt;strong&gt;two&lt;/strong&gt;  network interfaces  &lt;strong&gt;lo&lt;/strong&gt; and  &lt;strong&gt;eth0 .&lt;/strong&gt; The second line for each interface shows the link layer adddress associated with the device.&lt;/p&gt;

&lt;p&gt;The interface flags inside the &amp;lt;&amp;gt; are summarised as below.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LOOPBACK&lt;/strong&gt;  — this interface does not communicate with other hosts. All packets sent through it will be returned&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UP&lt;/strong&gt;  — device is turned on and is ready to accept packets for transmission&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;BROADCAST&lt;/strong&gt;  - has the facility to send packets to all hosts sharing the same link&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MULTICAST&lt;/strong&gt;  — indicating that the interface is aware of multicasting i.e. sending packets to some subset of neighbouring nodes&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;To see the statistics of specific interface&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;$ ip -s link show eth0&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cO-dvEzJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AThgMsEmdtZZO4Azu0EUuUQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cO-dvEzJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AThgMsEmdtZZO4Azu0EUuUQ.png" alt="" width="880" height="114"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.howtouselinux.com/post/check-ip-address-in-linux"&gt;To show ip addresses assigned to interfaces&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;$ ip address show&lt;br&gt;&lt;br&gt;
or&lt;br&gt;&lt;br&gt;
$ ip a&lt;br&gt;&lt;br&gt;
or&lt;br&gt;&lt;br&gt;
$ ip addr &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--KAKmJsFk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AiuXki2iypfRwnUNuMcvYuA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KAKmJsFk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AiuXki2iypfRwnUNuMcvYuA.png" alt="" width="880" height="226"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1 : lo&lt;/strong&gt;  : is having an IP address of  &lt;strong&gt;127.0.0.01 (a.k.a localhost)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2: eth0&lt;/strong&gt; : shows IP of  &lt;strong&gt;172.31.15.180&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is the private IP assigned by AWS to an EC2 instance. This IP is obtained from the subnet  &lt;strong&gt;172.31.0.0&lt;/strong&gt;/&lt;strong&gt;20&lt;/strong&gt;  CIDR block in which the instance is launched.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Create dummy interface&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A dummy interface is entirely virtual like, for example, the loopback interface. The dummy interface address look like a real address for local programs. The purpose of a dummy interface is to provide a device to route packets through without actually transmitting them. This is very handy when you want to simulate a network computing environment for testing purpose.&lt;/p&gt;

&lt;h1&gt;
  
  
  create dummy interface
&lt;/h1&gt;

&lt;p&gt;sudo ip link add dummy1 type dummy# assign address to dummy interface&lt;br&gt;&lt;br&gt;
sudo ip addr add 192.168.0.3/24 dev dummy1# make interface up&lt;br&gt;&lt;br&gt;
ip link set dummy1 up&lt;/p&gt;

&lt;p&gt;You will see that dummy interface is created and IP address is also assigned to that dummy interface.&lt;/p&gt;

&lt;p&gt;Note that this IP address is entirely different — virtual than the subnet CIDR range is  &lt;em&gt;172.31.0.0/20&lt;/em&gt;  provided by AWS and this could be any valid CIDR block.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--qsa_wlxG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2Ar78OKtcKbgbZ-pX7hSKwkQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qsa_wlxG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2Ar78OKtcKbgbZ-pX7hSKwkQ.png" alt="" width="880" height="194"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SJ3AFg5b--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AJFZ7FqapJqA_x3vn4Swctw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SJ3AFg5b--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AJFZ7FqapJqA_x3vn4Swctw.png" alt="" width="880" height="343"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  test the connectivity
&lt;/h1&gt;

&lt;p&gt;ping 192.168.0.3&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9tT2z4Mf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2A7pw76x9DPVU5npL8i1MQVw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9tT2z4Mf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2A7pw76x9DPVU5npL8i1MQVw.png" alt="" width="880" height="222"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Run HTTP server with new virtual IP
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Scenario&lt;/strong&gt;  1 : Run  &lt;em&gt;http server&lt;/em&gt;  on port  &lt;em&gt;8000&lt;/em&gt;  and serve the content from direcory  &lt;em&gt;/tmp&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;python3 -m http.server 8000 --directory /tmp&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--viLww-jE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2A1CUWuAtcDud0d5JTyGtbsQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--viLww-jE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2A1CUWuAtcDud0d5JTyGtbsQ.png" alt="" width="880" height="126"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  If you  &lt;strong&gt;&lt;em&gt;curl&lt;/em&gt;&lt;/strong&gt;  to public ip  &lt;strong&gt;13.232.86.139:8000&lt;/strong&gt; you should receive HTTP 200 response as shown here.&lt;/li&gt;
&lt;li&gt;  Similarly  &lt;strong&gt;&lt;em&gt;curl&lt;/em&gt;&lt;/strong&gt;  to  &lt;em&gt;127.0.0.1&lt;/em&gt; also works !&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xaKB5C4Y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AO_Xvwo51xrEs9LWPaqOLOg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xaKB5C4Y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AO_Xvwo51xrEs9LWPaqOLOg.png" alt="" width="880" height="115"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you curl to the new network interface with IP  &lt;strong&gt;192.168.0.3&lt;/strong&gt;  it also gives HTTP 200 reponse.&lt;/p&gt;

&lt;p&gt;This works fine since the the traffic is accepted on all the network interfaces (0.0.0.0/0)on port 8000 of host !&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7EV6hnAN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AXr77Bw-rg8qFVCuEY-jX0A.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7EV6hnAN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AXr77Bw-rg8qFVCuEY-jX0A.png" alt="" width="880" height="97"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scenario 2 : Run Python Server on the new IP address 192.168.0.3&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;python3 -m http.server --bind 192.168.0.3 8000 --directory /tmp&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VzmTLBH6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2Aap_Fqv8p6ludTKXyQ9QFAw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VzmTLBH6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2Aap_Fqv8p6ludTKXyQ9QFAw.png" alt="" width="880" height="58"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now the following result is seen&lt;/p&gt;

&lt;p&gt;a)  &lt;em&gt;curl&lt;/em&gt;  to public ip  &lt;em&gt;13.232.86.139&lt;/em&gt;:&lt;em&gt;8000&lt;/em&gt;  &lt;strong&gt;does not work&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;b)  &lt;em&gt;curl&lt;/em&gt;  to  &lt;em&gt;127.0.0.01&lt;/em&gt;:&lt;em&gt;8000&lt;/em&gt;  &lt;strong&gt;does not work&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;c)  &lt;em&gt;curl&lt;/em&gt;  to  &lt;em&gt;192.168.0.3&lt;/em&gt;:&lt;em&gt;8000&lt;/em&gt;  &lt;strong&gt;Works&lt;/strong&gt;  !&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9YtEg8Qy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AkRlnVfNJwBJDnHTAazeZ7g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9YtEg8Qy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AkRlnVfNJwBJDnHTAazeZ7g.png" alt="" width="880" height="139"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--mYJcIOMP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AMcb9Nt8_oR-qSwxC5zIwoA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mYJcIOMP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2AMcb9Nt8_oR-qSwxC5zIwoA.png" alt="" width="880" height="116"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is as expected as the web server is now tied to only specific network interface IP i.e.  &lt;em&gt;192.168.0.3&lt;/em&gt;  on port  &lt;em&gt;8000&lt;/em&gt;  so any traffic which is not destined to new ip adresss will not be accepted by the HTTP server !&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;To delete the network interfaces&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;$ sudo ip link set dummy1 down&lt;br&gt;&lt;br&gt;
$ sudo ip link del dummy1&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fIJJfKfg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2A3FR72M2LRlEsu_sEp3LsvA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fIJJfKfg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/1400/1%2A3FR72M2LRlEsu_sEp3LsvA.png" alt="" width="880" height="145"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This deletes the network interface  &lt;em&gt;dummy1&lt;/em&gt;  as seen above.&lt;/p&gt;

&lt;p&gt;That is all about this minimal know how on network interface.&lt;/p&gt;

&lt;p&gt;I hope to build on this in my future posts.&lt;/p&gt;

&lt;p&gt;Stay tuned !&lt;/p&gt;

&lt;p&gt;reference:&lt;br&gt;
&lt;a href="https://askubuntu.com/questions/1443572/how-to-get-the-ip-address-without-ifconfig-or-ip-command-in-ubuntu"&gt;https://askubuntu.com/questions/1443572/how-to-get-the-ip-address-without-ifconfig-or-ip-command-in-ubuntu&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Cannot connect to sftp server</title>
      <dc:creator>hemanlinux</dc:creator>
      <pubDate>Sun, 11 Dec 2022 13:43:16 +0000</pubDate>
      <link>https://dev.to/hemanlinux/cannot-connect-to-sftp-server-5c85</link>
      <guid>https://dev.to/hemanlinux/cannot-connect-to-sftp-server-5c85</guid>
      <description>&lt;p&gt;Cannot connect to sftp server — “Too many authentication failures for user”&lt;br&gt;
I faced this issue when trying to use Filezilla client to access a remote ftp location.&lt;/p&gt;

&lt;p&gt;The initial stack trace ( with debug level set to 3) is as follows.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Trace:   Trying Pageant key #0
Trace:   Server refused public key
Trace:   Trying Pageant key #1
Trace:   Server refused public key
Trace:   Trying Pageant key #2
Trace:   Received disconnect message (protocol error)
Trace:   Disconnection message text: Too many authentication failures for facade
Trace:   Server sent disconnect message
Trace:   type 2 (protocol error):
Trace:   "Too many authentication failures for facade"
Error:   Server sent disconnect message
Error:   type 2 (protocol error):
Error:   "Too many authentication failures for facade"
Trace:   CSftpControlSocket::ResetOperation(66)
Trace:   CControlSocket::ResetOperation(66)
Error:   Could not connect to server
Status:   Waiting to retry...

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Thanks to this post:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.howtouselinux.com/post/2-ways-to-fix-ssh-too-many-authentication-failures"&gt;https://www.howtouselinux.com/post/2-ways-to-fix-ssh-too-many-authentication-failures&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I identified that the reasons for this issue are follows.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;At the time of the issue, I had used “ssh-add” to add several keys for accessing multiple other instances.&lt;/li&gt;
&lt;li&gt;FileZilla does’t know which keys it needs to try and tries every available keys&lt;/li&gt;
&lt;li&gt;The server had set a maximum retry count (3) and as I had more than 3 keys, FileZilla failed after trying only 3 keys.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>linux</category>
      <category>ssh</category>
      <category>beginners</category>
      <category>cloud</category>
    </item>
    <item>
      <title>How to find IP Address on Windows, macOS and Linux</title>
      <dc:creator>hemanlinux</dc:creator>
      <pubDate>Sat, 10 Dec 2022 13:52:21 +0000</pubDate>
      <link>https://dev.to/hemanlinux/how-to-find-ip-address-on-windows-macos-dan-linux-4ejk</link>
      <guid>https://dev.to/hemanlinux/how-to-find-ip-address-on-windows-macos-dan-linux-4ejk</guid>
      <description>&lt;h2&gt;
  
  
  How to check IP address on Linux
&lt;/h2&gt;

&lt;p&gt;Go find Terminal or Command Prompt on menu. Alternatively you can hit Ctrl + Alt + T on keyboard at the same time&lt;br&gt;
Type in ifconfig&lt;br&gt;
Your IP Address information will show up.&lt;br&gt;
This post explains more about &lt;a href="https://www.howtouselinux.com/post/check-ip-address-in-linux"&gt;how to check ip address in Linux&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to check IP address on Windows
&lt;/h2&gt;

&lt;p&gt;Right click on Wifi icon (located on bottom left of the screen), and then choose Open Network and Sharing Center&lt;/p&gt;

&lt;p&gt;You will see a new Network and Sharing Center dialog page, double click on current connection. See picture bellow.&lt;br&gt;
Wi-Fi Status page will show up, click on Details.&lt;/p&gt;

&lt;p&gt;Your IP Address are listed on IPv4 Address Property row.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://support.microsoft.com/en-us/windows/find-your-ip-address-in-windows-f21a9bbc-c582-55cd-35e0-73431160a1b9"&gt;This post&lt;/a&gt; explains more.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to check IP address on macOS
&lt;/h2&gt;

&lt;p&gt;Go right click on Apple logo (located on top left of the screen), then click on System Preferences&lt;/p&gt;

&lt;p&gt;On System Preferences, click on Network icon.&lt;/p&gt;

&lt;p&gt;On Network page, click on connected menu on left side of the dialog page, connected interface has green-dot-mark.&lt;br&gt;
Click on Advanced (located on bottom right of the dialog box)&lt;br&gt;
Find TCP-IP tab on the top row. see picture bellow.&lt;/p&gt;

&lt;p&gt;Your IP Address are listed on IPv4 Address Property row.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>linux</category>
      <category>cloud</category>
    </item>
    <item>
      <title>What I learned today</title>
      <dc:creator>hemanlinux</dc:creator>
      <pubDate>Sun, 04 Dec 2022 08:23:26 +0000</pubDate>
      <link>https://dev.to/hemanlinux/understanding-ip-address-1l96</link>
      <guid>https://dev.to/hemanlinux/understanding-ip-address-1l96</guid>
      <description>&lt;p&gt;Today we can discuss about IP address and I can also tell you about IPv4 and IPv6:&lt;br&gt;
Everyone who are living in this world has it’s own unique identity. The unique identity maybe his/her home address or maybe his/her ID card number. But can you ever think what is your identity on the internet??? So, don’t worry today i can answer this question in more simple words.&lt;/p&gt;

&lt;h2&gt;
  
  
  IP Address:
&lt;/h2&gt;

&lt;p&gt;IP address stands for Internet Protocol Address. It can provide your identity on the internet. &lt;/p&gt;

&lt;p&gt;It’s also enable the devices to communicate with each other on IP Based Networks like internet. The example of IP address is (231.23.764.123). &lt;/p&gt;

&lt;p&gt;The working process of this technology is very simple. When any device is connected to the internet. A unique numerical identity is assigned to it. When two devices wanted to share the information. &lt;/p&gt;

&lt;p&gt;The data are firstly converted into packets and then transferred to the destination device containing IP address of both devices.&lt;/p&gt;

&lt;h2&gt;
  
  
  Version Of IP ADDRESS:
&lt;/h2&gt;

&lt;p&gt;There are two versions of IP address which are introduced now a days. The first one is IPv4 and the second one is IPv6.&lt;/p&gt;

&lt;p&gt;IPv4: IPv4 stands for Internet Protocol Version 4. It is a technology that allows the devices to communicate with each other. IPv4 is popular now a days and many devices are used this type of technology. The IPv4 address size is 32 bit. The example of IPv4 is (192.149.0.24).&lt;/p&gt;

&lt;p&gt;IPv6: IPv6 stands for Internet Protocol Version 6. It is more advanced then IPv4 but it’s working is same like IPv4. It’s enable more devices to communicate with each other. The IPv6 address size is 128 bit. The example of IPv6 is (3FFE:F200:0234::48).&lt;/p&gt;

&lt;h2&gt;
  
  
  how to check ip address
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Windows 11&lt;/strong&gt;&lt;br&gt;
For Wi-Fi connection&lt;br&gt;
Select Start &amp;gt; Settings &amp;gt; Network &amp;amp; internet &amp;gt; Wi-Fi and then select the Wi-Fi network you're connected to.&lt;br&gt;
Under Properties, look for your IP address listed next to IPv4 address.&lt;/p&gt;

&lt;p&gt;For Ethernet connection&lt;br&gt;
Select Start &amp;gt; Settings &amp;gt; Network &amp;amp; internet &amp;gt; Ethernet.&lt;br&gt;
Under Properties, look for your IP address listed next to IPv4 address.&lt;br&gt;
&lt;a href="https://support.microsoft.com/en-us/windows/find-your-ip-address-in-windows-f21a9bbc-c582-55cd-35e0-73431160a1b9"&gt;This pos&lt;/a&gt;t explains more.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Linux&lt;/strong&gt;&lt;br&gt;
You can determine the IP address or addresses of your Linux system by using the hostname , ifconfig , or ip commands. This post explains more about &lt;a href="https://www.howtouselinux.com/post/check-ip-address-in-linux"&gt;how to check ip address in Linux&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MacOS Terminal&lt;/strong&gt;&lt;br&gt;
Open the Terminal. You’ll likely find it in the Utilities subfolder of the Applications folder.&lt;/p&gt;

&lt;p&gt;For Ethernet connections, enter the command ipconfig getifaddr en1. For Wi-Fi connections, enter the command ipconfig getifaddr en0.&lt;/p&gt;

&lt;p&gt;The Terminal app can quickly show you your local IP address and your public IP address at the command prompt with one simple entry.&lt;/p&gt;

&lt;p&gt;To get your public IP address from the Mac Terminal, enter the command curl ifconfig.me.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>cloud</category>
      <category>tutorial</category>
      <category>devops</category>
    </item>
    <item>
      <title>how to change the account password expiration date in Linux</title>
      <dc:creator>hemanlinux</dc:creator>
      <pubDate>Sun, 04 Dec 2022 02:36:29 +0000</pubDate>
      <link>https://dev.to/hemanlinux/how-to-change-the-account-password-expiration-date-in-linux-24o2</link>
      <guid>https://dev.to/hemanlinux/how-to-change-the-account-password-expiration-date-in-linux-24o2</guid>
      <description>&lt;p&gt;&lt;strong&gt;Question&lt;/strong&gt;:&lt;br&gt;
I am confused about the password expiration date in Linux. Looks like chage command -e changes the account expiration date not the password expiration date. &lt;/p&gt;

&lt;p&gt;Two things are totally different. I can not find any command that can be used to change the password expiration date.&lt;/p&gt;

&lt;p&gt;All Linux commands change the user expiration date. is there any way to do this? Thanks a lot.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Answer&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;Use chage -M. For example, to set 90 days as the maximum before password expiry enter sudo chage -M 90 .&lt;/p&gt;

&lt;p&gt;EDIT: To set an exact expiration date you need to figure out how many days that are between the Last password change date (see chage -l) and your desired password expiration date and then use that number in chage -M.&lt;/p&gt;

&lt;p&gt;Reference: &lt;a href="https://www.howtouselinux.com/post/change-user-password-expiration-date-in-linux" rel="noopener noreferrer"&gt;https://www.howtouselinux.com/post/change-user-password-expiration-date-in-linux&lt;/a&gt;&lt;/p&gt;

</description>
      <category>watercooler</category>
    </item>
  </channel>
</rss>
