# Instruction to set a Static IP for wlan0 voxl2

Source: https://forum.modalai.com/topic/4105/instruction-to-set-a-static-ip-for-wlan0-voxl2
Category: VOXL SDK and Software (https://forum.modalai.com/category/47/voxl-sdk-and-software)
Posted: 2025-01-20 11:42:27 UTC by Judoor 0
Replies: 2 · Views: 2568

## Judoor 0 · 2025-01-20 11:42:27 UTC

**Guide to Configure a Static IP Address with systemd-networkd**
I didn't find any guide on how to do it with the voxl2, even the `static-ip` service seem reserved for `eth0` configuration, tell me, if i'm wrong i'll delete this.

If you want to assign a static IP address to your wireless network interface (using `systemd-networkd`), follow this simple guide. In this example, we configure the `wlan0` interface to use the static IP address `192.168.XX.XX`.

---

### 1. **Check the Status of systemd-networkd**

Before starting, ensure that `systemd-networkd` is enabled and running:
```bash
sudo systemctl status systemd-networkd
```
If the service is not active, enable it:
```bash
sudo systemctl enable systemd-networkd
sudo systemctl start systemd-networkd
```

---

### 2. **Create the Configuration File for wlan0**

1. Navigate to the configuration directory:
   ```bash
   cd /etc/systemd/network/
   ```
2. Create a configuration file for your wireless interface (e.g., `10-wlan0.network`)
   ```bash
   sudo nano 10-wlan0.network
   ```
3. Add the following lines to the file:
   ```plaintext
   [Match]
   Name=wlan0

   [Network]
   Address="192.168.XX.XX"/24
   Gateway="192.168.XX.1"
   DNS=8.8.8.8 1.1.1.1
   ```
   **Explanation:**
   - `Name=wlan0`: Specifies the target interface.
   - `Address=192.168.XX.XX/24`: Defines the IP address and subnet mask.
   - `Gateway=192.168.XX.1`: Sets the default gateway.
   - `DNS=8.8.8.8 1.1.1.1`: Configures the DNS servers.

4. Save and close the file.

---

### 3. **Restart systemd-networkd**

Apply the new configuration by restarting the service:
```bash
sudo systemctl restart systemd-networkd
```

---

### 4. **Verify the Configuration**

To verify that the IP address has been assigned to `wlan0`:
```bash
ip addr show wlan0
```
You should see the IP address `192.168.XX.XX` assigned to the interface.

---

### 5. **Enable the Service at Boot**

Ensure that `systemd-networkd` is enabled to run at every boot:
```bash
sudo systemctl enable systemd-networkd
```

---

### 6. **Reboot the System**

To confirm everything works correctly on startup:
```bash
sudo reboot
```

---

You have now successfully configured a static IP address for the `wlan0` interface using `systemd-networkd` on your voxl2!

## Reply by Judoor 0 · 2025-01-20 15:27:28 UTC

Another way to do it, maybe more in line with the way modal ai intended it is this : 

**Update dhcpcd.conf for Static IP**
Open the dhcpcd.conf file for editing:

```bash
nano /etc/dhcpcd.conf
```
Add the following lines at the end of the file to configure a static IP for wlan0:

```plaintext
interface wlan0
static ip_address=192.168.XX.XX/24
static routers=192.168.XX.1
static domain_name_servers=8.8.8.8 1.1.1.1
```
**Explanation:**

interface wlan0: Specifies the network interface to configure.
static ip_address=192.168.XX.XX/24: Assigns the static IP and subnet mask.
static routers=192.168.XX.1: Sets the gateway address.
static domain_name_servers=8.8.8.8 1.1.1.1: Configures DNS servers (Google and Cloudflare in this case).
Save and exit the file.

Restart dhcpcd Service
Apply the changes by restarting the dhcpcd service:

```bash
systemctl enable dhcpcd
systemctl restart dhcpcd
```

## Reply by tom (ModalAI staff) · 2025-01-20 17:42:43 UTC (in reply to Judoor 0)

@Judoor-0 Thanks for the contribution, this is very helpful!
