{"id":4405,"date":"2022-04-29T13:58:00","date_gmt":"2022-04-29T11:58:00","guid":{"rendered":"https:\/\/blog.besharp.it\/?p=4405"},"modified":"2022-04-29T16:17:07","modified_gmt":"2022-04-29T14:17:07","slug":"networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato","status":"publish","type":"post","link":"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/","title":{"rendered":"Networking avanzato: fare un NAT privato di un\u2019intera VPC da e verso l\u2019on-prem"},"content":{"rendered":"\n

Introduzione<\/h2>\n\n\n\n

In un modello Hybrid Cloud ci sono un sacco di complessit\u00e0 riguardanti il networking quando vogliamo creare un perfetto ecosistema tra il cloud e l\u2019ambiente on premises.<\/p>\n\n\n\n

In particolare, una connessione attraverso una VPN site-to-site \u00e8 molto delicata siccome possiamo avere diverse complicanze, ad esempio la sovrapposizione dei CIDR degli ambienti. <\/p>\n\n\n\n

Un altro problema potrebbe essere quando si vuole stabilire una VPN e dall\u2019altra parte ci sono delle limitazioni per quanto riguarda la dimensione di rete della VPC e non possono riservare ad esempio una rete \/16 per una connessione ma una rete \/27. O ancora, in un caso peggiore, bisogna utilizzare una rete \/27 che non appartiene alla stessa classe di CIDR della VPC.<\/p>\n\n\n\n

Nello specifico, l’ultimo \u00e8 un caso reale che ci \u00e8 capitato durante la configurazione di una vpn tra la nostra architettura su AWS e un ambiente on premises.<\/p>\n\n\n\n

La terza parte non poteva stabilire una connessione con lo spazio di rete della nostra VPC siccome troppo esteso (\/16) ed inoltre, si sovrapponeva. <\/p>\n\n\n\n

In un ambiente on premises non ci sarebbero stati problemi siccome \u00e8 possibile nattare sotto uno spazio di rete il traffico verso un altro ambiente creando una rete virtuale ma nel cloud questo non \u00e8 possibile di default.<\/p>\n\n\n\n

Per cui abbiamo dovuto scegliere uno spazio di rete pi\u00f9 piccolo che andasse bene per entrambi da utilizzare per nattare il nostro traffico verso di loro e, allo stesso tempo, permettere loro di raggiungere i nostri applicativi collocati in spazi di rete differenti.<\/p>\n\n\n\n

Non ci concentreremo sulla spiegazione delle caratteristiche dei componenti di networking. In uno dei nostri prercedenti articoli<\/a> abbiamo presentato come configurare gli account con il transit gateway e i NAT centralizzati. Questo articolo si pu\u00f2 considerare come un\u2019estensione dei concetti teorici descritti, quindi consigliamo di dargli un\u2019occhiata per comprendere al meglio i contenuti che stiamo per affrontare.<\/p>\n\n\n\n

L’architettura<\/h2>\n\n\n\n

Supponiamo di aver gi\u00e0 creato una piccola landing zone<\/a> composta da due account – master  e produzione – ognuno con la sua VPC collegata tramite il transit gateway (la stessa architettura presentata nell\u2019articolo al link precedente, ma, per semplicit\u00e0, con solamente gli account master e produzione). <\/p>\n\n\n\n

Il master account \u00e8 responsabile della configurazione del networking mentre nell\u2019account di produzione abbiamo il nostro applicativo. Vogliamo creare una connessione VPN con un ambiente on premises che deve accettare e inviare il traffico solo ad una rete con CIDR \/27 diverso dai CIDR delle VPC di master e produzione. Che cosa \u00e8 possibile fare in questo caso? Cominciamo con la parte divertente e disegnamo una soluzione a questo problema.<\/p>\n\n\n\n

La nostra configurazione del networking per i due account \u00e8 la seguente illustrata in figura.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"\"<\/figure><\/div>\n\n\n\n

<\/p>\n\n\n\n

Qui abbiamo i due account presentati precedentemente, connessi attraverso il transit gateway. I cidr delle loro VPC sono 10.100.0.0\/16 per il master account (VPC M) e 10.150.0.0\/16 per l\u2019account di produzione (VPC A). L\u2019ambiente on premises deve creare una connessione VPN con i nostri due account quindi dobbiamo stabilire la connessione solo con l\u2019account master e dopodich\u00e8 sfruttare la transitivit\u00e0 del transit gateway per allargare la connessione all\u2019account di produzione. Il problema \u00e8 che l\u2019ambiente on premises ha gi\u00e0 parecchie connessioni VPN e il cidr 10.100.0.0\/16 non \u00e8 disponibile e sarebbe comunque troppo ampio per stabilire una singola connessione VPN. Scegliamo quindi di utilizzare il cidr 10.179.0.0\/27 (\u00e8 importante scegliere una dimensione di rete sufficiente in modo da evitare il rischio di non avere sufficienti IP).<\/p>\n\n\n\n

In poche parole, dobbiamo nattare tutto il traffico in uscita dagli account master e produzione verso la VPN dietro questo cidr.<\/p>\n\n\n\n

Configurazione della VPC<\/h2>\n\n\n\n

Creiamo una nuova VPC nell\u2019account master da usare come rete virtuale in modo da nattare il traffico diretto alla vp.<\/p>\n\n\n\n

Questa VPC con CIDR 10.179.0.0\/16 (per semplicit\u00e0 la chiameremo VPC N) aggiunge un livello di networking in pi\u00f9 di fronte alla VPC M. <\/p>\n\n\n\n

Nota<\/strong>: se ti stai chiedendo come mai non abbiamo esteso il cidr della vpc, fai bene. Avremmo potuto aggiungere un ulteriore cidr alla vpc e raggiungere lo stesso risultato ma la differenza rispetto alla creazione di una nuova VPC \u00e8 che il cidr deve appartenere alla stessa classe del cidr primario: ad esempio se il CIDR \u00e8 all\u2019interno dello spazio di indirizzi 10.x.x.x\/8, non puoi usare un cidr all\u2019interno degli altri spazi di indirizzamento privati definiti dal RFC1918 (192.168.x.x\/16 and 172.16.x.x\/12).<\/p>\n\n\n\n

Lo schema architetturale diventa quindi quello mostrato nella figura sottostante.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"\"<\/figure><\/div>\n\n\n\n

<\/p>\n\n\n\n

Con una \/27 possiamo creare solo 2 subnet pubbliche con cidr 10.179.0.0\/28 e 10.179.0.16\/28 e 2 subnet nattate con cidr 10.179.0.32\/28 e 10.179.0.48\/28. Le subnet pubbliche sono le due che possono comunicare con l\u2019ambiente on premises mentre le subnet nattate sono necessarie per redirigere il traffico diretto verso l\u2019ambiente on premises attraverso il NAT.\u00a0Infine, nelle subnet pubbliche creiamo i 2 NAT gateway privati che nattano tutto il traffico proveniente dalla VPC M e dalla VPC A. Notare<\/strong> che questo \u00e8 un NAT sorgente cio\u00e8 \u00e8 utilizzato solamente dal traffico proveniente dagli ambienti aws, quindi il traffico proveniente dall\u2019ambiente on premises necessita di un altro instradamento per comunicare con le VPC A e M.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"\"<\/figure><\/div>\n\n\n\n

<\/p>\n\n\n\n

L\u2019immagine di sopra \u00e8 una rappresentazione per capire meglio come viene instradato il traffico tra i due ambienti ma al momento solo l\u2019applicativo (una lambda ad esempio) pu\u00f2 raggiungere l\u2019ambiente on premises e non viceversa.<\/p>\n\n\n\n

Configurazione del Transit<\/h2>\n\n\n\n

Dopo aver creato la VPC, dobbiamo configurare il transit gateway in modo tale da stabilire la connessione tra le VPC esistenti e quella appena creata. Creiamo un nuovo transit gateway attachment nelle subnet nattate della VPC N e aggiungiamo nelle tabelle del transit le rotte dirette verso gli IP on premises attraverso l\u2019attachment dell VPC N.<\/p>\n\n\n\n

Configurazione della VPN<\/h2>\n\n\n\n

L\u2019ultima cosa che rimane da fare \u00e8 creare la VPN N. Creiamo una VPN site-to-site direttamente con la VPC N, quindi senza attaccarla al transit gateway ma al virtual private gateway.<\/p>\n\n\n\n

Il setup \u00e8 concluso! Possiamo provare a pingare una macchina on premises da una ec2 all\u2019interno della VPC M o A e se tutto \u00e8 ok dovremmo vedere il traffico provenire da uno dei due IP dei NAT gateway privata all\u2019interno della VPC N.<\/p>\n\n\n\n

L\u2019architettura completa \u00e8 quella mostrata in figura.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"\"<\/figure><\/div>\n\n\n\n

<\/p>\n\n\n\n

Come detto precedentemente, il problema che ha portato a questa soluzione \u00e8 stato il fatto che l\u2019ambiente on premises pu\u00f2 riservare solo una rete \/27 per stabilire una connessione VPN, quindi loro possono contattare solo gli ip della rete 10.179.0.0\/27. Come possono contattare i nostri applicativi all\u2019interno della VPC A con cidr 10.150.0.0\/16?<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"\"<\/figure><\/div>\n\n\n\n

<\/p>\n\n\n\n

Come mostrato in figura, In base al tipo di applicazione, l\u2019unica cosa che possiamo fare \u00e8 creare dei vpc endpoint, per esempio per raggiungere un api gateway. Questi assumono degli ip all\u2019interno del range 10.179.0.0\/27 ma l\u2019unico protocollo che possiamo utilizzare \u00e8 HTTP\/S.<\/p>\n\n\n\n

Inoltre, abbiamo un numero limitato di ip quindi dobbiamo tenere a mente che possiamo creare solamente un numero limitato di vpc endpoint.<\/p>\n\n\n\n

Considerazioni<\/h2>\n\n\n\n

Anche se inventare questa soluzione non \u00e8 stato esattamente un gioco da ragazzi – anche per il fatto che non abbiamo trovato casi simili sul web – siamo molto contenti perch\u00e9 ci ha permesso di risolvere questa particolare esigenza di networking.<\/p>\n\n\n\n

La bellezza di questa soluzione \u00e8 dovuta al fatto che per ogni VPN che necessitiamo di creare, se ci sono particolari limitazioni come quella presentata, basta creare una VPC specifica con l\u2019unico scopo di stabilire una connessione vpn. L\u2019altra parte della medaglia \u00e8 che questo comporta dei costi di networking maggiori siccome bisogna creare un transit gateway attachment e 2 NAT gateway. Inoltre, \u00e8 necessario creare un vpc endpoint per ciascun servizio che necessitiamo di contattare dall\u2019ambiente on premises. \u00c8 importante tenere a mente tutti questi aspetti prima di implementare questa soluzione. <\/p>\n\n\n\n

Conosci un altro modo per risolvere questo problema? Faccelo sapere nei commenti \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"

Introduzione In un modello Hybrid Cloud ci sono un sacco di complessit\u00e0 riguardanti il networking quando vogliamo creare un perfetto […]<\/p>\n","protected":false},"author":19,"featured_media":4413,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[469],"tags":[569,561,558,567,563],"yoast_head":"\nNetworking avanzato: fare un NAT privato di un\u2019intera VPC da e verso l\u2019on-prem - Proud2beCloud Blog<\/title>\n<meta name=\"description\" content=\"Come nattare il traffico AWS con qualsiasi IP privato e connettere un ambiente Cloud all'on-prem utilizzando AWS Transit Gateway\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Fare un NAT privato di un\u2019intera VPC da e verso l\u2019on-prem\" \/>\n<meta property=\"og:description\" content=\"Come nattare il traffico AWS con qualsiasi IP privato e connettere un ambiente Cloud all'on-prem utilizzando AWS Transit Gateway\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/\" \/>\n<meta property=\"og:site_name\" content=\"Proud2beCloud Blog\" \/>\n<meta property=\"article:published_time\" content=\"2022-04-29T11:58:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-04-29T14:17:07+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.besharp.it\/wp-content\/uploads\/2022\/04\/Copertina-blog-29-04-22_29-04-22-social-ita-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Nicholas Farina\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Fare un NAT privato di un\u2019intera VPC da e verso l\u2019on-prem\" \/>\n<meta name=\"twitter:description\" content=\"Come nattare il traffico AWS con qualsiasi IP privato e connettere un ambiente Cloud all'on-prem utilizzando AWS Transit Gateway\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/blog.besharp.it\/wp-content\/uploads\/2022\/04\/Copertina-blog-29-04-22_29-04-22-social-ita-1.png\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nicholas Farina\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/\",\"url\":\"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/\",\"name\":\"Networking avanzato: fare un NAT privato di un\u2019intera VPC da e verso l\u2019on-prem - Proud2beCloud Blog\",\"isPartOf\":{\"@id\":\"https:\/\/blog.besharp.it\/it\/#website\"},\"datePublished\":\"2022-04-29T11:58:00+00:00\",\"dateModified\":\"2022-04-29T14:17:07+00:00\",\"author\":{\"@id\":\"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/940bed4b4fc9516633ab61546781fe0c\"},\"description\":\"Come nattare il traffico AWS con qualsiasi IP privato e connettere un ambiente Cloud all'on-prem utilizzando AWS Transit Gateway\",\"breadcrumb\":{\"@id\":\"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/blog.besharp.it\/it\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Networking avanzato: fare un NAT privato di un\u2019intera VPC da e verso l\u2019on-prem\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.besharp.it\/it\/#website\",\"url\":\"https:\/\/blog.besharp.it\/it\/\",\"name\":\"Proud2beCloud Blog\",\"description\":\"il blog di beSharp\",\"alternateName\":\"Proud2beCloud Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.besharp.it\/it\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/940bed4b4fc9516633ab61546781fe0c\",\"name\":\"Nicholas Farina\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2b67c4cd4344ba8cc809c7548c16b42c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2b67c4cd4344ba8cc809c7548c16b42c?s=96&d=mm&r=g\",\"caption\":\"Nicholas Farina\"},\"description\":\"DevOps Engineer @ beSharp. I deal with the implementation and management of Cloud infrastructure on AWS. I am a CrossFit lover and in my free time, I go fishing mainly in salt water.\",\"url\":\"https:\/\/blog.besharp.it\/it\/author\/nicholas-farina\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Networking avanzato: fare un NAT privato di un\u2019intera VPC da e verso l\u2019on-prem - Proud2beCloud Blog","description":"Come nattare il traffico AWS con qualsiasi IP privato e connettere un ambiente Cloud all'on-prem utilizzando AWS Transit Gateway","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:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/","og_locale":"it_IT","og_type":"article","og_title":"Fare un NAT privato di un\u2019intera VPC da e verso l\u2019on-prem","og_description":"Come nattare il traffico AWS con qualsiasi IP privato e connettere un ambiente Cloud all'on-prem utilizzando AWS Transit Gateway","og_url":"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/","og_site_name":"Proud2beCloud Blog","article_published_time":"2022-04-29T11:58:00+00:00","article_modified_time":"2022-04-29T14:17:07+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/blog.besharp.it\/wp-content\/uploads\/2022\/04\/Copertina-blog-29-04-22_29-04-22-social-ita-1.png","type":"image\/png"}],"author":"Nicholas Farina","twitter_card":"summary_large_image","twitter_title":"Fare un NAT privato di un\u2019intera VPC da e verso l\u2019on-prem","twitter_description":"Come nattare il traffico AWS con qualsiasi IP privato e connettere un ambiente Cloud all'on-prem utilizzando AWS Transit Gateway","twitter_image":"https:\/\/blog.besharp.it\/wp-content\/uploads\/2022\/04\/Copertina-blog-29-04-22_29-04-22-social-ita-1.png","twitter_misc":{"Scritto da":"Nicholas Farina","Tempo di lettura stimato":"8 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/","url":"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/","name":"Networking avanzato: fare un NAT privato di un\u2019intera VPC da e verso l\u2019on-prem - Proud2beCloud Blog","isPartOf":{"@id":"https:\/\/blog.besharp.it\/it\/#website"},"datePublished":"2022-04-29T11:58:00+00:00","dateModified":"2022-04-29T14:17:07+00:00","author":{"@id":"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/940bed4b4fc9516633ab61546781fe0c"},"description":"Come nattare il traffico AWS con qualsiasi IP privato e connettere un ambiente Cloud all'on-prem utilizzando AWS Transit Gateway","breadcrumb":{"@id":"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/blog.besharp.it\/it\/networking-avanzato-come-nattare-il-traffico-aws-con-qualsiasi-ip-privato\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.besharp.it\/it\/"},{"@type":"ListItem","position":2,"name":"Networking avanzato: fare un NAT privato di un\u2019intera VPC da e verso l\u2019on-prem"}]},{"@type":"WebSite","@id":"https:\/\/blog.besharp.it\/it\/#website","url":"https:\/\/blog.besharp.it\/it\/","name":"Proud2beCloud Blog","description":"il blog di beSharp","alternateName":"Proud2beCloud Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.besharp.it\/it\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"it-IT"},{"@type":"Person","@id":"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/940bed4b4fc9516633ab61546781fe0c","name":"Nicholas Farina","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/2b67c4cd4344ba8cc809c7548c16b42c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2b67c4cd4344ba8cc809c7548c16b42c?s=96&d=mm&r=g","caption":"Nicholas Farina"},"description":"DevOps Engineer @ beSharp. I deal with the implementation and management of Cloud infrastructure on AWS. I am a CrossFit lover and in my free time, I go fishing mainly in salt water.","url":"https:\/\/blog.besharp.it\/it\/author\/nicholas-farina\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/posts\/4405"}],"collection":[{"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/users\/19"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/comments?post=4405"}],"version-history":[{"count":0,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/posts\/4405\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/media\/4413"}],"wp:attachment":[{"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/media?parent=4405"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/categories?post=4405"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/tags?post=4405"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}