🖍️
Developer Note
  • Welcome
  • Git
    • Eslint & Prettier & Stylelint & Husky
  • Programming Language
    • JavaScript
      • Script Async vs Defer
      • Module
      • Const VS Let VS Var
      • Promise
      • Event Loop
      • Execution Context
      • Hoisting
      • Closure
      • Event Buddling and Capturing
      • Garbage Collection
      • This
      • Routing
      • Debounce and Throttle
      • Web Component
      • Iterator
      • Syntax
      • String
      • Array
      • Object
      • Proxy & Reflect
      • ProtoType
      • Class
      • Immutability
      • Typeof & Instanceof
      • Npm (Node package manager)
    • TypeScript
      • Utility Type
      • Type vs Interface
      • Any vs Unknown vs Never
      • Void and undefined
      • Strict Mode
      • Namespace
      • Enum
      • Module
      • Generic
    • Python
      • Local Development
      • Uv
      • Asyncio & Event loop
      • Context Manager
      • Iterator & Generator
      • Fast API
      • Pydantic & Data Class
    • Java
      • Compilation and Execution
      • Data Type
      • Enumeration
      • Data Structure
      • Try Catch
      • InputStream and OutputStream
      • Concurrent
      • Unicode Block
      • Build Tools
      • Servlet
      • Java 8
  • Coding Pattern
    • MVC vs MVVM
    • OOP vs Functional
    • Error Handling
    • MVC vs Flux
    • Imperative vs Declarative
    • Design Pattern
  • Web Communication
    • REST API
      • Web Hook
      • CORS issue
    • HTTPS
    • GraphQL
      • REST API vs GraphQL
      • Implementation (NodeJS + React)
    • Server-Sent Event
    • Web Socket
    • IP
    • Domain Name System (DNS)
  • Frontend
    • Progressive Web App (PWA)
    • Single Page & Multiple Page Application
    • Search Engine Optimiaztion (SEO)
    • Web bundling & Micro-frontend
      • Webpack
        • Using Webpack to build React Application
        • Using Webpack to build react library
      • Vite
      • Using rollup to build react library
      • Implementing micro frontend
    • Web Security
      • CSRF & Nonce
      • XSS
      • Click hijacking
    • Cypress
    • CSS
      • Core
        • Box Model
        • Inline vs Block
        • Flexbox & Grid
        • Pseudo Class
        • Position
      • Tailwind CSS
        • Shadcn
      • CSS In JS
        • Material UI
    • React
      • Core
        • Component Pattern
        • React Lazy & Suspense
        • React Portal
        • Error Boundary
        • Rendering Methods
        • Environment Variable
        • Conditional CSS
        • Memo
        • Forward Reference
        • High Order Component (HOC) & Custom Hook
        • TypeScript
      • State Management
        • Redux
        • Recoil
        • Zustand
      • Routing
        • React Router Dom
      • Data Fetching
        • Axios & Hook
        • React Query
        • Orval
      • Table
        • React Table
      • Form & Validation
        • React Hook Form
        • Zod
      • NextJS
        • Page Router
        • App Router
      • React Native
    • Angular
    • Svelte
      • Svelte Kit
  • Backend
    • Cache
      • Browser Cache
      • Web Browser Storage
      • Proxy
      • Redis
    • Rate limit
    • Monitoring
      • Logging
      • Distributed Tracing
    • Load Test
    • Encryption
    • Authentication
      • Password Protection
      • Cookie & Session
      • JSON Web Token
      • SSO
        • OAuth 2.0
        • OpenID Connect (OIDC)
        • SAML
    • Payment
      • Pre-built
      • Custom
    • File Handling
      • Upload & Download (Front-end)
      • Stream & Buffer
    • Microservice
      • API Gateway
      • Service Discovery
      • Load Balancer
      • Circuit Breaker
      • Message Broker
      • BulkHead & Zipkin
    • Elastic Search
    • Database
      • SQL
        • Group By vs Distinct
        • Index
        • N + 1 problem
        • Normalization
        • Foreign Key
        • Relationship
        • Union & Join
        • User Defined Type
      • NOSQL (MongoDB)
      • Transaction
      • Sharding
      • Lock (Concurrency Control)
    • NodeJS
      • NodeJS vs Java Spring
      • ExpressJS
      • NestJS
        • Swagger
        • Class Validator & Validation Pipe
        • Passport (Authentication)
      • Path Module
      • Database Connection
        • Integrating with MYSQL
        • Sequalize
        • Integrating with MongoDB
        • Prisma
        • MikroORM
        • Mongoose
      • Streaming
      • Worker Thread
      • Passport JS
      • JSON Web Token
      • Socket IO
      • Bull MQ
      • Pino (Logging)
      • Yeoman
    • Spring
      • Spring MVC
      • Spring REST
      • Spring Actuator
      • Aspect Oriented Programming (AOP)
      • Controller Advice
      • Filter
      • Interceptor
      • Concurrent
      • Spring Security
      • Spring Boot
      • Spring Cloud
        • Resilience 4j
      • Quartz vs Spring Batch
      • JPA and Hibernate
      • HATEOS
      • Swagger
      • Unit Test (Java Spring)
      • Unit Test (Spring boot)
  • DevOp
    • Docker
    • Kubernetes
      • Helm
    • Nginx
    • File System
    • Cloud
      • AWS
        • EC2 (Virtual Machine)
        • Network
        • IAM
          • Role-Service Binding
        • Database
        • Route 53
        • S3
        • Message Queue
        • Application Service
        • Serverless Framework
        • Data Analysis
        • Machine Learning
        • Monitoring
        • Security
      • Azure
        • Identity
        • Compute Resource
        • Networking
        • Storage
        • Monitoring
      • Google Cloud
        • IAM
          • Workload Identity Federation
        • Compute Engine
        • VPC Network
        • Storage
        • Kubernetes Engine
        • App Engine
        • Cloud function
        • Cloud Run
        • Infra as Code
        • Pub/Sub
    • Deployment Strategy
    • Jenkins
    • Examples
      • Deploy NextJS on GCP
      • Deploy Spring on Azure
      • Deploy React on Azure
  • Domain Knowledge
    • Web 3
      • Blockchain
      • Cryptocurrency
    • AI
      • Prompt
      • Chain & Agent
      • LangChain
      • Chunking
      • Search
      • Side Products
Powered by GitBook
On this page
  • Network and Subnetworks
  • Firewall
  • Cloud NAT
  • Shared VPC & VPC Peering
  • Cloud DNS
  • What is DNS
  • DNS Records
  • Cloud VPN
  • Load Balancer

Was this helpful?

  1. DevOp
  2. Cloud
  3. Google Cloud

VPC Network

PreviousCompute EngineNextStorage

Last updated 1 year ago

Was this helpful?

Network and Subnetworks

  • Default type is also the type of auto mode network

  • All the subnet fits within 10.128.0.0/9 CIDR block

  • When new Google Cloud regions become available, new subnets in those regions are automatically added to auto mode networks using the IP range from that block.

  • Network range cannot be overlapped within the same network

  • Custom mode cannot be changed to auto mode, but auto mode can be changed into custom mode

  • the first and second addresses in the range, .0 and .1, are reserved for the network and the subnet's gateway respectively. This makes the first and second available addresses .2 and .3 which are assigned to the VM instances. Other reserved addresses in every subnet are the second-to-last address in the range and the last address which are reserved as the broadcast address. every subnet has four reserved IP addresses in its primary IP range

  • Google Cloud VPCs that you increase the IP address space of any subnet without any workload shutdown or down time.

Firewall

  • If all firewall rules in a network are deleted, there is still an implied deny all ingress rule and an implied allow all egress rule for the network.

  • Here is the explanation of the field on firewall set up

  • We can decide whether it is egress type or ingress, but also set up the condition that which port or protocol should be limited, whether the rule is blocking or allowing and the range of the vm within the network

  • Destination ranges is to protect from undesired connections initiated by a VM instance towards an external host

  • Source CIDR ranges can be used to protect an instance from undesired connections coming either from external networks or from GCP IP ranges.

  • Here is the default firewall rule when auto mode network is created

Cloud NAT

  • Cloud NAT lets you provision your application instances without public IP addresses, while also allowing them to access the internet in a controlled and efficient manner.

Shared VPC & VPC Peering

  • When using shared VPC, you designate a project as a host project and attach one or more other service projects to it. Subnets of the Shared VPC networks in the host project are accessible by Service Project Admins

  • In this case, the web application service project is the host project and the three other projects are the service projects.

  • VPC network peering in contrast, allows private RFC 1918 connectivity across two VPC networks, regardless of whether they belong to the same project or the same organization.

  • VPC network peering is a decentralized or distributed approach to multi project networking. each VPC network may remain under the control of separate administrator groups and maintains its own global firewall and routing tables.

Cloud DNS

What is DNS

  • DNS system is a database that store information including ip address, so that it can be used to convert human-readable name into ip address

DNS Records

NS

  • The name server that containing domain information, such as ip

A

  • The ip address that the domain name points to (ip v4 format)

CNAME

  • The other domain name that points to other domain name

  • Use case: share the same ip address to multiple different domain names

Cloud VPN

  • When using Cloud VPN is that the maximum transmission unit or MTU, for your on-premises VPN gateway cannot be greater than 1460 bytes.

  • In order to use dynamic routes you need to configure Cloud Routers

  • Cloud router can manage routes from a cloud VPN tunnel using Border Gateway Protocol or BGP to allows for routes to be updated and exchanged without changing the tunnel configuration.

Load Balancer

  • Here is the decision tree

  • The frontend is where your application interacts with requests and forwards the traffic to the URL map.

  • The next component is the URL map, which has path-based routine configuration to send traffic to one or more backend services. A URL map can match parts or hosts in the request to send traffic to different backend services.

  • Cloud Run services can be a backend, as can other services on Google Cloud.

Shared VPC connects projects within the same . Linked projects can be in the same or different , but if they are in different folders the admin must have rights to both folders.

Cloud VPN securely connects your peer network to your through an connection. Traffic traveling between the two networks is encrypted by one VPN gateway and then decrypted by the other VPN gateway.

organization
folders
Shared VPC Admin
Virtual Private Cloud (VPC) network
IPsec
VPN