{"id":4784,"date":"2018-11-07T11:44:45","date_gmt":"2018-11-07T11:44:45","guid":{"rendered":"https:\/\/dbtut.com\/?p=4784"},"modified":"2018-11-07T11:44:45","modified_gmt":"2018-11-07T11:44:45","slug":"postgresql-list-the-connections-from-the-ip-block","status":"publish","type":"post","link":"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/","title":{"rendered":"PostgreSQL &#8211; List the connections from the IP block"},"content":{"rendered":"<p>One of the useful data types of PostgreSQL is the inet data type. inet is used to define IPv4 and IPv6 addresses. The ip address can also be stored with the subnet if desired. It supports a total of 17 operators, including basic operators &#8220;&lt;,&gt;, =&#8221; operators.<\/p>\n<p>In addition to this, with the help of functions such as network (inet) and netmask (inet), it makes network calculations easier for us.<\/p>\n<p>&nbsp;<\/p>\n<h3>pg_stat_activity view<\/h3>\n<p>The pg_stat_activity view lists the current connections to inform us about their status.<\/p>\n<p>This view lists all connections on PostgreSQL and their state, such as query start or transaction start time, client ip, user, and database info.<\/p>\n<p>&nbsp;<\/p>\n<p>When we query this view in a database that has a lot of connections, it may be a little difficult. So we have to query this view by filtering.<\/p>\n<p>As a filter example, let&#8217;s list the connections for a particular user;<\/p>\n<pre class=\"lang:default decode:true \">SELECT * FROM pg_stat_activity WHERE usename = 'kullan\u0131c\u0131_adi';<\/pre>\n<p>&nbsp;<\/p>\n<p>Let&#8217;s list the connections from a specific client IP;<\/p>\n<pre class=\"lang:default decode:true \">SELECT * FROM pg_stat_activity WHERE client_addr = inet '10.0.2.2';<\/pre>\n<p>&nbsp;<\/p>\n<p>Now, combine the above 2 information to list all connections under a specific IP mask. For example, let&#8217;s list the connections from all ips that start with &#8220;10.0&#8230;.&#8221;<\/p>\n<pre class=\"lang:default decode:true \">SELECT * FROM pg_stat_activity WHERE client_addr &lt;&lt; inet '10.0.0.0\/16'<\/pre>\n<p>Here, let&#8217;s look at the &lt;&lt; (is contained by) operator. Thanks to this operator, we have been able to easily extract the connections from an ip block.<\/p>\n<p>&nbsp;<\/p>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_4784\" class=\"pvc_stats all  \" data-element-id=\"4784\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dbtut.com\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>One of the useful data types of PostgreSQL is the inet data type. inet is used to define IPv4 and IPv6 addresses. The ip address can also be stored with the subnet if desired. It supports a total of 17 operators, including basic operators &#8220;&lt;,&gt;, =&#8221; operators. In addition to this, with the help of &hellip;<\/p>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_4784\" class=\"pvc_stats all  \" data-element-id=\"4784\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dbtut.com\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"author":384,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[5],"tags":[],"class_list":["post-4784","post","type-post","status-publish","format-standard","","category-postgres"],"aioseo_notices":[],"a3_pvc":{"activated":true,"total_views":724,"today_views":1},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>PostgreSQL - List the connections from the IP block - Database Tutorials<\/title>\n<meta name=\"description\" content=\"PostgreSQL - List the connections from the IP block\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PostgreSQL - List the connections from the IP block - Database Tutorials\" \/>\n<meta property=\"og:description\" content=\"PostgreSQL - List the connections from the IP block\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/\" \/>\n<meta property=\"og:site_name\" content=\"Database Tutorials\" \/>\n<meta property=\"article:published_time\" content=\"2018-11-07T11:44:45+00:00\" \/>\n<meta name=\"author\" content=\"\u015eahap A\u015f\u00e7\u0131\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u015eahap A\u015f\u00e7\u0131\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/\"},\"author\":{\"name\":\"\u015eahap A\u015f\u00e7\u0131\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/a2e613d6be4a3553f844a52366dc0888\"},\"headline\":\"PostgreSQL &#8211; List the connections from the IP block\",\"datePublished\":\"2018-11-07T11:44:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/\"},\"wordCount\":230,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/dbtut.com\/#organization\"},\"articleSection\":[\"PostgreSQL\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/\",\"url\":\"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/\",\"name\":\"PostgreSQL - List the connections from the IP block - Database Tutorials\",\"isPartOf\":{\"@id\":\"https:\/\/dbtut.com\/#website\"},\"datePublished\":\"2018-11-07T11:44:45+00:00\",\"description\":\"PostgreSQL - List the connections from the IP block\",\"breadcrumb\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/dbtut.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PostgreSQL &#8211; List the connections from the IP block\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/dbtut.com\/#website\",\"url\":\"https:\/\/dbtut.com\/\",\"name\":\"Database Tutorials\",\"description\":\"MSSQL, Oracle, PostgreSQL, MySQL, MariaDB, DB2, Sybase, Teradata, Big Data, NOSQL, MongoDB, Couchbase, Cassandra, Windows, Linux\",\"publisher\":{\"@id\":\"https:\/\/dbtut.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/dbtut.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/dbtut.com\/#organization\",\"name\":\"dbtut\",\"url\":\"https:\/\/dbtut.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg\",\"contentUrl\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg\",\"width\":223,\"height\":36,\"caption\":\"dbtut\"},\"image\":{\"@id\":\"https:\/\/dbtut.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/a2e613d6be4a3553f844a52366dc0888\",\"name\":\"\u015eahap A\u015f\u00e7\u0131\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/005a983c36f6cca1fef1bc16f5d9d1d3f2fd7a27692b5d2c362b0b806bcfdb4a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/005a983c36f6cca1fef1bc16f5d9d1d3f2fd7a27692b5d2c362b0b806bcfdb4a?s=96&d=mm&r=g\",\"caption\":\"\u015eahap A\u015f\u00e7\u0131\"},\"url\":\"https:\/\/dbtut.com\/index.php\/author\/sahapasci\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PostgreSQL - List the connections from the IP block - Database Tutorials","description":"PostgreSQL - List the connections from the IP block","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/","og_locale":"en_US","og_type":"article","og_title":"PostgreSQL - List the connections from the IP block - Database Tutorials","og_description":"PostgreSQL - List the connections from the IP block","og_url":"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/","og_site_name":"Database Tutorials","article_published_time":"2018-11-07T11:44:45+00:00","author":"\u015eahap A\u015f\u00e7\u0131","twitter_card":"summary_large_image","twitter_misc":{"Written by":"\u015eahap A\u015f\u00e7\u0131","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/#article","isPartOf":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/"},"author":{"name":"\u015eahap A\u015f\u00e7\u0131","@id":"https:\/\/dbtut.com\/#\/schema\/person\/a2e613d6be4a3553f844a52366dc0888"},"headline":"PostgreSQL &#8211; List the connections from the IP block","datePublished":"2018-11-07T11:44:45+00:00","mainEntityOfPage":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/"},"wordCount":230,"commentCount":0,"publisher":{"@id":"https:\/\/dbtut.com\/#organization"},"articleSection":["PostgreSQL"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/","url":"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/","name":"PostgreSQL - List the connections from the IP block - Database Tutorials","isPartOf":{"@id":"https:\/\/dbtut.com\/#website"},"datePublished":"2018-11-07T11:44:45+00:00","description":"PostgreSQL - List the connections from the IP block","breadcrumb":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/dbtut.com\/index.php\/2018\/11\/07\/postgresql-list-the-connections-from-the-ip-block\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dbtut.com\/"},{"@type":"ListItem","position":2,"name":"PostgreSQL &#8211; List the connections from the IP block"}]},{"@type":"WebSite","@id":"https:\/\/dbtut.com\/#website","url":"https:\/\/dbtut.com\/","name":"Database Tutorials","description":"MSSQL, Oracle, PostgreSQL, MySQL, MariaDB, DB2, Sybase, Teradata, Big Data, NOSQL, MongoDB, Couchbase, Cassandra, Windows, Linux","publisher":{"@id":"https:\/\/dbtut.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dbtut.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/dbtut.com\/#organization","name":"dbtut","url":"https:\/\/dbtut.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dbtut.com\/#\/schema\/logo\/image\/","url":"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg","contentUrl":"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg","width":223,"height":36,"caption":"dbtut"},"image":{"@id":"https:\/\/dbtut.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/dbtut.com\/#\/schema\/person\/a2e613d6be4a3553f844a52366dc0888","name":"\u015eahap A\u015f\u00e7\u0131","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dbtut.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/005a983c36f6cca1fef1bc16f5d9d1d3f2fd7a27692b5d2c362b0b806bcfdb4a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/005a983c36f6cca1fef1bc16f5d9d1d3f2fd7a27692b5d2c362b0b806bcfdb4a?s=96&d=mm&r=g","caption":"\u015eahap A\u015f\u00e7\u0131"},"url":"https:\/\/dbtut.com\/index.php\/author\/sahapasci\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts\/4784","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/users\/384"}],"replies":[{"embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/comments?post=4784"}],"version-history":[{"count":0,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts\/4784\/revisions"}],"wp:attachment":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/media?parent=4784"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/categories?post=4784"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/tags?post=4784"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}