Let's talk about Network Manager.
Network Manager is a system D service
that manages network configuration.
We haven't talked about system D yet,
but system D is a manager of everything on Linux.
You'll learn about it in an upcoming lesson.
The configuration that is created by the Network Manager
utilities is stored in the files etc.
NetworkManagerSystem-Connections.
Most people never need these files,
but if you have used networking for a long time,
you might be used to looking at the networking configuration
scripts.
There are also legacy scripts and etc.
SysConfigNetwork scripts.
They are still supported, but deprecated.
Don't use them anymore.
Different applications are available to interface
with Network Manager, and instead of editing files,
you should use these applications.
There is NMCLI, which is the powerful command line utility,
and there is NMTUI, which offers a convenient text user
interface.
And also in GNOME, the graphical interface,
we have graphical tools that help in managing the network.
Now, while working with Network Manager,
you need to know about connections and devices.
So devices in Network Manager are network interfaces.
And connections are collections of configuration settings
for a device.
And these connections are stored in the etc.
NetworkManagerSystem-Connections file.
Only one connection can be active for a device.
Now, you might wonder, does it make sense
to have multiple connections?
Honestly, I don't think so.
But some people say, yeah, that this makes sense.
Because on my laptop, I have one connection
that I use at home and another connection
that I use at work.
And by switching between these connections,
I'm always connecting the right way.
Well, that might be a use case where
it might be useful to have multiple connections.
I wouldn't focus on that too much.
Now, Network Manager also needs permissions.
And permissions to modify settings in Network Manager
are applied through D-Bus.
D-Bus is an interface in Linux that
allows applications to talk to other applications directly.
Non-privileged users that are logged in on the console
can change network settings.
And that's because of these D-Bus permissions.
And non-privileged users that are logged into SSH
cannot change the Network Manager settings.
It's a little bit advanced.
And I wouldn't worry about it too much.
But you can use NMCLI general permissions
for an overview of current permissions that apply.
Let me show you.
So let me start with NMCLI general permissions.
And there we can see all the different permissions
that the current user has.
Well, of course, I have all these permissions.
Hey, what do you want?
I'm root.
Now, how about I exit my root shell.
NMCLI general permissions is showing that I still
do have a couple of permissions.
So quite some permissions like disable the network
or disable Wi-Fi or whatever.
That's because you do not want ordinary users
to use escalated privileges if ever something
needs to be changed.
And hey, let me do something exceptional.
We're in the GNOME interface.
And in the GNOME interface, we have a settings application.
I normally don't do it.
But for this case, I want to make an exception.
If in the settings you click Network,
there you can see the network connection
that you've got, which is currently enabled.
And click on the wheel.
And there you have your network options.
And in the network options, you can see your IPv4 configuration.
If you really don't like NMCLI or NMTOI,
and if you have a graphical user interface,
feel free to select manual and enter all the information
that you want.
Don't forget to click Apply.
Otherwise, the settings won't be applied.