# 2.1 VCN (basics)

This chapter is mostly written for those that are quite beginners with VCN \&Terraform in OCI.

*Some may consider the following explanation (for 2.1.1 & 2.1.2) quite unorthodox, but one must find the logic behind any kind of system/application before writing code.*

For starters, let's create a virtual network in a very simple manner - by using ["Start VCN Wizzard" ](https://docs.oracle.com/en-us/iaas/Content/Network/Tasks/quickstartnetworking.htm). This will allow us to get used to the environment,  and from there, to start writing the Terraform code for creating another VCN.

**Contents:**

**2.1.1** [Create a virtual network using Start VCN Wizard](https://isaac-exe.gitbook.io/various-tutorials/tutorials/untitled/vcn-basics/2.1.1-create-a-virtual-network-using-start-vcn-wizard)

**2.1.2** [VCN & public subnet (step-by-step in Terraform)](https://isaac-exe.gitbook.io/various-tutorials/tutorials/untitled/vcn-basics/2.1.2-writing-terraform-step-by-step)

**2.1.3** [VCN & public subnet (new compartment)](https://isaac-exe.gitbook.io/various-tutorials/tutorials/untitled/vcn-basics/untitled) (Terraform automation only)

**2.1.4** [VCN, Terraform and Ansible](https://isaac-exe.gitbook.io/various-tutorials/tutorials/untitled/vcn-basics/2.1.4-vcn-terraform-and-ansible-nginx) (Nginx example)

**2.1.5** [ VCN & private subnet ](https://isaac-exe.gitbook.io/various-tutorials/tutorials/untitled/vcn-basics/2.1.5-vcn-and-private-subnet)(step-by-step in Terraform)

###
