Menu
Is free
check in
the main  /  Installation and Setup / For what you need a NetWorks file in Windows. What is Networks and how to fix it? Versions and variations

What is needed by the NetWorks file in Windows. What is Networks and how to fix it? Versions and variations

Etc folder is a folder in which are the following text files Hosts, lmhosts.sam, Networks, Protocol, Services This is the standard content of the ETC folder for Windows XP and Windows 7.

Everything about the ETC folder

Find where the ETC folder is simple, press "Start" - "Computer" - " Local disk C »-" Windows "-" System32 "-" Drivers "-" ETC ".

What files in the ETC folder

If you have disappeared the ETC folder, you can download the ETC Windows 7 folder and for Windows 8.

Now I will describe how to restore the ETC folder by downloading the archive of the ETC folder unzip it. Copy only ETC, find where it must be inserted. The ETC folder for Windows 7 does not differ from the ETC folder for Windows XP. The contents of the ETC Windows 7 folder differs from Windows 8. In Windows 8, two files in the ETC folder more: hosts.Backup and hosts.rolback. Full content of the Windows 8 Hosts ETC folder, lmhosts.sam, Networks, Protocol, Services, hosts.Backup and hosts.rollback. Viruses usually change the contents of two files it hosts file In the ETC folder and the Services file in the ETC folder. You can open files in the ETC folder using a notepad.

Good time, dear readers. Publish the second part. In the current part, the main emphasis is made on network Implementation in Linux(how to set up a network in Linux how to distribute the network in Linux and maintain a network subsystem in Linux in working condition).

TCP / IP Setup in Linux to work in the Ethernet network

For work S. network protocols TCP / IP in Linux is enough only loop interfaceBut if you need to combine hosts with each other, naturally, it is necessary to have a network interface, data transmission channels (for example, a twisted pair), possibly non-network equipment. Also, it is necessary to have the presence of established (, etc.), usually supplied in. You also need to have a network (for example / ETC / HOSTS) and network support.

Network Parameters

Let's start understanding the Linux network mechanisms with manual network configuration, that is, with the case when IP address Network interface static. So, when setting up the network, you must consider and configure the following parameters:

IP address - As already mentioned in the first part of the article, it is a unique address of the machine, in the format of four decimal numbers, separated by points. Usually, when working in local networkSelected from private ranges, for example: 192.168.0.1

Subnet mask - Also, 4 decimal numbers that determine which part of the address refers to the address of the network / subnet, and which is to the address of the host. The subnet mask is a number that folds (in binary form) using a logical and, with an IP address and, resulting in it turns out that the subnet is belong to the address. For example, the address 192.168.0.2 with a mask 255.255.255.0 belongs to the subnet 192.168.0.

Substitute address - Determined by the mask of the subnet. At the same time, no subnets exist for loop interfaces.

Broadcast address - The address used to send broadcast packets, which will receive all subnet hosts. Usually, it is equal to the address of the subnet with the value of the host 255, that is, for the subnet 192.168.0, the broadcast will be 192.168.0.255, similarly, for the subnet 192.168 broadcast will be 192.168.255.255. For loop interfaces there is no broadcast address.

IP address gateway- this is the address of the machine that is the default gateway for communication with foreign world. Gateways can be somewhat if the computer is connected to several networks simultaneously. The gateway address is not used in isolated networks (not connected to global Network), Because this networks have nowhere to send packets outside the network, the same belong to looped interfaces.

Name Server IP Address (DNS - Servers)- address of the server of the transforming host names in the IP address. Usually, provided by the provider.

Network settings files in Linux (configuration files)

To understand the work of the network in Linux, I would definitely advise you to get acquainted with the article "". In general, all Linux work is based on, which is born when the OS is loaded and puts its descendants, which in turn fulfill all necessary work, Whether the launch of Bash or Demon. Yes, and all loading Linux Based on, in which the entire sequence of starting small utilities is prescribed with various parameters that are successively started / stop at start-up / stopping the system. Similarly, the Linux network subsystem is launched.

Each Linux distribution is slightly different from the other network initialization mechanism, but the overall picture, I think, after reading it will be clear. If you view the starting Linux distribution network scripts, how to configure the network configuration using configuration files will become more or less understandable, for example, Debian (we take this distribution) for the initialization of the network, the script answers /etc/init.d/networking., reviewing which:

Net-Server: ~ # Cat /etc/init.d/networking ### Begin Init Info # Provides: Networking # Required-Start: MountKernfs $ Local_fs # Required-Stop: $ Local_fs # Should -Start: ifupdown # shald-stop: iFupdown # Default-Start: S # Default-Stop: 0 6 # Short-Description: Raise Network Interfaces. ### end init info path \u003d "/ usr / local / sbin: / usr / local / bin: / sbin: / bin: / usr / sbin: / bin" [-x / sbin / iFup] || EXIT 0. / LIB / LSB / INIT-FUNCTIONS PROCESS_OPTIONS () ([[-E / etc / network / options] || Return 0 log_warning_msg "/ etc / network / options Still EXISTS AND IT WILL BE IGNORED! READ README.DEBIAN OF NETBASE." ) Check_network_file_systems () ([[-E / PROC / MOUNTS] || RETURN 0 if [-e /etc/iscsi/iscsi.initramfs]; Then log_warning_msg "Not Deconfiguring Network Interfaces: Iscsi root is mounted." Exit 0 fi Exec 9<&0 < /proc/mounts while read DEV MTPT FSTYPE REST; do case $DEV in /dev/nbd*|/dev/nd*|/dev/etherd/e*) log_warning_msg "not deconfiguring network interfaces: network devices still mounted." exit 0 ;; esac case $FSTYPE in nfs|nfs4|smbfs|ncp|ncpfs|cifs|coda|ocfs2|gfs|pvfs|pvfs2|fuse.httpfs|fuse.curlftpfs) log_warning_msg "not deconfiguring network interfaces: network file systems still mounted." exit 0 ;; esac done exec 0<&9 9<&- } check_network_swap() { [ -e /proc/swaps ] || return 0 exec 9<&0 < /proc/swaps while read DEV MTPT FSTYPE REST; do case $DEV in /dev/nbd*|/dev/nd*|/dev/etherd/e*) log_warning_msg "not deconfiguring network interfaces: network swap still mounted." exit 0 ;; esac done exec 0<&9 9<&- } case "$1" in start) process_options log_action_begin_msg "Configuring network interfaces" if ifup -a; then log_action_end_msg $? else log_action_end_msg $? fi ;; stop) check_network_file_systems check_network_swap log_action_begin_msg "Deconfiguring network interfaces" if ifdown -a --exclude=lo; then log_action_end_msg $? else log_action_end_msg $? fi ;; force-reload|restart) process_options log_warning_msg "Running $0 $1 is deprecated because it may not enable again some interfaces" log_action_begin_msg "Reconfiguring network interfaces" ifdown -a --exclude=lo || true if ifup -a --exclude=lo; then log_action_end_msg $? else log_action_end_msg $? fi ;; *) echo "Usage: /etc/init.d/networking {start|stop}" exit 1 ;; esac exit 0

you can find several functions checking the presence of connected network file systems ( check_network_file_systems (), check_network_swap ()), as well as checking the existence of some unclear config / etc / network / options (function process_Options ()), and at the very bottom, construction case "$ 1" in And in accordance with the parameter entered (START / STOP / FORCE-RELOAD | RESTART or any arc) produces certain actions. Of these most " certain actions", on the example of the argument START, it can be seen that the function is started first process_Options.further goes to the phrase log Configuring Network Interfaces.and team starts IFUP -A.. If you look at MAN ifup, it is clear that this command reads the config from the file / etc / network / interfaces And according to key -a. Runs all interfaces having a parameter aUTO..

The IFUP AND IFDOWN Commands May Be Used to Configure (OR, ReSpectively, Deconfigure) Network Interfaces Based on Interface Definitions in the file / etc / network / interfaces.

-a, --all.
If Given to iFup, Affect All Interfaces Marked Auto. Interfaces Are Brought Up in The Order in Which The Are Defined in / etc / Network / Interfaces. If Given to IfDown, Affect All Defined Interfaces. Interfaces Are Brought Down In The Order in Which the Are Currently Listed in the State File. Only Interfaces Defined in / etc / Network / Interfaces Will Be Brought Down.

IP-Server: ~ # This File Describes The Network Interfaces Available On Your System # and How to Activate Them. For more information, See Interfaces (5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 iface eth0 inet dhcp allow-hotplug eth2 iface eth2 inet static address 192.168.1.1 netmask 255.255.255.0 gateway 192.168.1.254 broadcast 192.168.1.255

In this config, the string allow-HotPlug. and aUTO. - these are synonyms and interfaces will be raised by the team iFUP -A.. Here, in fact, the entire chain of the network subsystem. Similarly, in other distributions: in Redhat and SUSE network starts a script /etc/init.d/network.. Reviews of it, similarly can be found where the network configuration lies.

/ etc / hosts

This file stores a list IP addresses and corresponding to them (addresses) host names. File format is no different from Mastdayn:

IP-Server: ~ # Cat / etc / hosts # ip host.in.domain host 127.0.0.1 Localhost 127.0.1.1 ip-server.domain.local IP-Server 192.168.1.1 ip-server.domain.local IP-Server

Historically, this file was used instead of the DNS service. Currently, the file can also be used instead of the DNS service, but only provided that on your network the number of machines is measured in units, and not in dozens or hundreds, because in this case you have to control the correctness of this file on each machine.

/ etc / hostname

This file contains NetBIOS host name:

IP-Server: ~ # Cat / etc / hostname ip-server

This file stores the names and addresses of local and other networks. Example:

IP Server: ~ # Cat / etc / Networks default 0.0.0.0 LOOPBACK 127.0.0.0 Link-Local 169.254.0.0 Home-Network 192.168.1.0

When using this file, networks can be managed by name. For example, add a route not route Add. 192.168.1.12 , but route Add..

/etc/nsswitch.conf.

The file determines host search orderNetworks, lines correspond for this setting:

For hosts: Hosts: Files DNS for Networks: Networks: Files

Parameter files. specifies to use the specified files. (/ etc / hosts and / etc / networks respectively), parameter dNS. specifies to use the service dNS..

/etc/host.conf.

The file specifies name resolution parameters for the resolver

IP Server: ~ # Cat /etc/host.conf Multi ON

This file indicates the RESOLV library - return all valid node addresses that met in the / etc / hosts file, and not just the first one.

/etc/resolv.conf.

This file defines the parameters of the network name conversion mechanism in the IP address. Simple language Defines the DNS settings. Example:

IP Server: ~ # cat /etc/resolv.conf NameServer 10.0.0.4 NameServer 10.0.0.1 Search Domain.local

The first 2 sties specify the DNS servers. The third line specifies the search domains. If, when resolving the name, the name will not be an FQDN name, then this domain will substitute in the form of "ending". For example, when executing the Ping Host command, the run address is converted to host.domain.local. The remaining parameters can be read in man risolv.conf. Very often, Linux uses the dynamic generation of this file, using the so-called. programs / sbin / resolvconf. This program is a mediator between services that dynamically providing names for names (for example DHCP Client.) and services that use name server data. In order to use a dynamically generated file /etc/resolv.conf., it is necessary to make this file with a symbolic reference to /etc/Resolvconf/Run/Resolv.conf.. In some distributions, the path may be different, it will be written about it in man Resolvconf..

Network configuration

After reading the main configuration files, you can look at. Above already mentioned the team iFup., iFdown.But these funds are not entirely versatile, let's say in the RH distributions there are no default commands. In addition, a new high-level network management tool appeared in new distributions - which belongs to the iProute package. He (iProute Package) I will be devoted. And in the current post I will not consider it. The commands described below belong.

So, to be confident in the performance of the team in any Linux distribution, it is necessary to use the two main old-handed teams. This is, and ARP. First team (responsible for setting up network interfaces(iP, mask, gateway), second () - routing setup, Third (ARP) - aRP Table Management. I would like to note that the execution of these commands without disabling the standard SystemV startup script for the network subsystem will make changes to the first reboot / restart network service, because If you spoke with brains, you can understand that the script /etc/init.d/networking.at the next launch, re-read the above configs and apply old settings. Accordingly, the output for a permanent settings setting is either the iFConfig command with the corresponding parameters - to enter into, or correct the appropriate network interface configs.

Also, if the team is executed iFconfig with missing parameters (for example, only the IP address), then the rest are complemented automatically (for example, Broadkast Address is added by default with a host address ending at 255 and the default subnet mask is taken 255.255.255.0).

Routing For existing interfaces in modern nuclei, always rises automatically by the kernel. Rather, direct routes to the network according to the IP and subnet settings to which the raised interface are formed automatically, the kernel forces. The Gateway field for such entries shows the output interface address or *. In the old versions of the kernel (the kernel number from which the routes began to rise automatically - I will not tell you) it was necessary to add a route manually.

If there is a need to organize your routes, then you need to use. This command can be added and deleted routes, but again, this will help only before restarting /etc/init.d/networking (or another script responsible for the network in your distribution). So that the routes are added automatically, you must also with the iFConfig command - add commands to add routes to RC.Local, or make the appropriate network interface configumes (for example, in DEB - / etc / Network / Options).

By what rules routes to networks are formed, I'm in

Diagnostics of the Linux network

There are a large number of network diagnostics tools in Linux, often they are very similar to Microsoft utilities. I will consider 3 main network diagnostic utilities, without which it will be problematic to identify problems.

I think that this utility is familiar almost to everyone. The work of this utility is dispatchso-called iCMP packages remote server that will be specified in the command settings, the server returns sent commands, and ping.counts time Required by the Saved Package to reach the server and return. For example:

# Ping Ya.Ru Ping Ya.ru (87.250.251.3) 56 (84) bytes of data. 64 bytes from www.yandex.ru (87.250.251.3): ICMP_SEQ \u003d 1 TTL \u003d 57 TIME \u003d 42.7 MS 64 Bytes from www.yandex.ru (87.250.251.3): ICMP_SEQ \u003d 2 TTL \u003d 57 TIME \u003d 43.2 MS 64 BYETES From www.yandex.ru (87.250.251.3): ICMP_SEQ \u003d 3 TTL \u003d 57 TIME \u003d 42.5 MS 64 Bytes from www.yandex.ru (87.250.251.3): ICMP_SEQ \u003d 4 TTL \u003d 57 TIME \u003d 42.5 MS 64 Bytes from WWW .yandex.ru (87.250.251.3): ICMP_SEQ \u003d 5 TTL \u003d 57 TIME \u003d 41.9 MS ^ C --- ya.ru Ping Statistics --- 5 Packets Transmitted, 5 Received, 0% Packet Loss, Time 4012ms RTT MIN / AVG / MAX / MDEV \u003d 41.922 / 42.588 / 43.255 / 0.500 MS

As can be seen from the above example, ping.displays us a bunch of useful information. Primarily, we found out that we can establish a connection with the host ya.ru(Sometimes they say that the "host ya.ru is available to us"). Secondlywe see that DNS works correctlyBecause the "pingled" name was correctly transformed into IP Address (Ping Ya.R.ru (87.250.251.3)). Further, in field ICMP_SEQ \u003d Specifies the numbering of the packets sent. A number sent to each packet is sequentially assigned and if there will be "failures" in this numbering, it will tell us that the connection with the "pingled" is unstable, as well as may mean that the server to which the packets send overloaded. By meaning time \u003d.we see, how much time package traveled up to 87.250.251.3 and back. Stop the operation of the Ping utility can be keys Ctrl + C.

Same, utility Ping. Interesting what can afford to see where the problems arose. Suppose utility Ping. Displays a message nETWORK NOT REACHABLE (Network is not available)or other similar message. This is most likely talking about the incorrect configuration of your system. In this case, you can send packets on the IP address of the provider to understand where the problem arises (between the local PC or "on"). If you are connected to the Internet via the router, you can send packets on its IP. Accordingly, if the problem is manifested already at this stage, it says about incorrect configuration of the local system, or about the damage to the cable, if the router responds, and there is no provider's server, then the problem is in the provider's communication channel, etc. Finally, if fails ended with the name of the name in IP, you can check the connection over IP if the answers will come correctly, then you can guess that the problem is in DNS.

It should be noted that this utility is not always a reliable tool for diagnosis. Remote server can block answers to ICMP requests.

traceroute.

Simple language, the team is called Tracing route. How can I understand from the name - this utility will show on which route there are packs to host. Traceroute utility Some like ping.But displays more interesting information. Example:

# Traceroute Ya.ru Traceroute to ya.ru (213.180.204.3), 30 Hops Max, 60 Byte Packets 1 243-083-free.kubtelecom.ru (213.132.83.243) 6.408 MS 6.306 MS 6.193 MS 2 065-064-Free .kubtelecom.ru (213.132.64.65) 2.761 MS 5.787 MS 5.777 MS 3 LGW.KUBTELECOM.RU (213.132.75.54) 5.713 MS 5.701 MS 5.636 MS 4 kubtelecom-lgw.krasnodar.gldn.net (194.186.6.177) 81.430 MS 81.581 MS 81.687 MS 5 Cat26.Moscow.gldn.net (194.186.118) 47.789 MS 47.888 MS 48.011 MS 6 213.33.201.230 (213.33.201.230) 43.322 MS 41.783 MS 41.106 MS 7 carmine-red-vlan602.yandex.net (87.250. 242.206) 41.199 MS 42.578 MS 42.610 MS 8 www.yandex.ru (213.180.204.3) 43.185 MS 42.126 MS 42.679 MS

As you can see, you can trace the route from the provider router 243-083-Free.Kubtelecom.ru (213.132.83.243) (South of Russia) to the final host in www.yandex.ru (213.180.204.3) in Moscow.

dig

This utility sends requests to DNS servers and returns information about the specified domain. Example:

# Dig @ ns.kuban.ru roboti.ru;<<>\u003e Dig 9.3.6-P1<<>\u003e @ ns.kuban.ru roboti.ru; (1 Server Found) ;; Global Options: Printcmd ;; Got Answer: ;; - \u003e\u003e Header.<<- opcode: QUERY, status: NOERROR, id: 64412 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0 ;; QUESTION SECTION: ;roboti.ru. IN A ;; ANSWER SECTION: roboti.ru. 448 IN A 72.52.4.90 ;; AUTHORITY SECTION: roboti.ru. 345448 IN NS ns1.sedoparking.com. roboti.ru. 345448 IN NS ns2.sedoparking.com. ;; Query time: 102 msec ;; SERVER: 62.183.1.244#53(62.183.1.244) ;; WHEN: Thu Feb 17 19:44:59 2011 ;; MSG SIZE rcvd: 94

Dig command sent request server DNS. - nS.KUBAN.RU. (@ Ns.Kuban.ru. - This option is not necessary, in this case, the source of DNS information will be taken from the configuration of your system) about the domain name Roboti.ru.. As a result, he received an answer in which we can see in the section Answer Section. Information about the IP addresses of the domain in the section AUTHORITY SECTION Information about the so-called. authoritative DNS servers. The third line from below tells us what server provided the answer.

Other diagnostic utilities

ping, Dig and other diagnostic utilities with parameters can be found in post.

Connecting a new network card

Connecting and launching a new network card comes down to performing a few steps:

1. Physical Card Connection

3. View output to detect a new network card system:

Let's see the output Before connecting a new card:

Server: ~ # Dmesg | GREP ETH [4.720550] E1000: ETH0: E1000_PROBE: Intel (R) Pro / 1000 Network Connection [5.130191] E1000: ETH1: E1000_Probe: Intel (R) Pro / 1000 Network Connection [15.285527] E1000: ETH2: E1000_WatchDog: Nic Link is Up 1000 MBPS Full Duplex, Flow Control: RX [15.681056] E1000: ETH0: E1000_WatchDog: Nic Link Is Up 1000 MBPS Full Duplex, Flow Control: RX

in the output it is clear that the system has 2 network cards ETH1 and ETH2. We connect the third and see the conclusion:

Server: ~ # Dmesg | GREP ETH [4.720513] E1000: ETH0: E1000_PROBE: Intel (R) Pro / 1000 Network Connection [5.132029] E1000: ETH1: E1000_PROBE: Intel (R) Pro / 1000 Network Connection [5.534684] E1000: ETH2: E1000_PROBE: Intel (R ) PRO / 1000 Network Connection [39.274875] udev: renamed network interface eth2 to eth3 [39.287661] udev: renamed network interface eth1_rename_ren to eth2 [45.670744] e1000: eth2: e1000_watchdog: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX [46.237232] E1000: ETH0: E1000_WatchDog: Nic Link is up 1000 MBPS Full Duplex, Flow Control: Rx [96.977468] E1000: ETH3: E1000_WatchDog: Nic Link is up 1000 MBPS Full Duplex, Flow Control: Rx

IN dmesg.we see that a new networking appeared is ETH3, which is actually ETH2, but renamed UDEV devices to ETH3, and ETH2 is actually renamed Eth1 (we will talk about UDev in a separate post). The appearance of our new network in DMesg We say that network card supportedkernel and correct determined. It remains for small - set up a new interface in / etc / network / interfaces(Debian), because this card was not initialized by the starting script /etc/init.d/network.. iFconfigthis card sees:

Server: ~ # Ifconfig ETH3 ETH3 LINK ENCAP: Ethernet Hwaddr 08: 00: 27: 5F: 34: AD INET6 ADDR: Fe80 :: A00: 27FF: FE5F: 34AD / 64 Scope: Link Up Broadcast Running Multicast MTU: 1500 Metric: 1 RX Packets: 311847 Errors: 0 Dropped: 0 Overruns: 0 Frame: 0 TX Packets: 126 Errors: 0 Dropped: 0 Overruns: 0 Carrier: 0 Collisions: 0 TXQueuelen: 1000 RX Bytes: 104670651 (99.8 MIB) TX Bytes: 16184 (15.8 KIB)

but again - it does not configure. How to configure the network card mentioned above.

Summary

I think today is all. When I started writing this article, I thought that I would do in one post, but he turned out to be high. Therefore, it was decided to smash an article into two. Total, I tried to set out, not a step-by-step hoatch on setting up the network, but to set out the principle and explain the understanding of how the network in Linux is started and running. I really hope that I managed it. I will be glad to your comments and additions. Over time, I will complement an article.

When it comes to computer networks, it is often possible to hear the mention of NFS. What does this abbreviation mean?

This is a protocol of a distributed file system, originally developed by Sun Microsystems in 1984, allowing the user on the client computer to access files through the network, like access to the local storage. NFS, like many other protocols, is based on the Open Network Computing Remote Procedure Call system (ONC RPC).

In other words, what is NFS? This is an open standard defined in Request for Comments (RFC), which allows you to implement a protocol.

Versions and variations

The inventor used only the first version for its own experimental purposes. When the developer team added significant changes to the initial NFS and released it outside the authorship of the Sun, they marked the new version as v2 so that you can test the interaction between distributions and create a backup option.

NFS V2.

Version 2 originally worked only on the User Datagram Protocol (UDP) protocol. Its developers wanted to save the server side without blocking implemented outside the main protocol.

The interface of the virtual file system allows you to perform modular implementation reflected in the simple protocol. By February 1986, solutions were demonstrated for operating systems such as System V Release 2, DOS and VAX / VMS using EUNICE. NFS V2 allowed to read only the first 2 GB of the file due to 32-bit restrictions.

NFS V3.

The first offer to develop NFS version 3 in Sun Microsystems was voiced shortly after the release of the second distribution. The main motivation was an attempt to mitigate the problem of performance of a synchronous recording. By July 1992, practical improvements made it possible to solve many shortcomings of NFS version 2, while leaving only insufficient support for files (64-bit sizes and file offset).

  • support for 64-bit sizes and file displacements for data processing of more than 2 gigabytes (GB);
  • support for asynchronous recording on the server to increase productivity;
  • additional file attributes in many answers to avoid the need to re-extract them;
  • rEADDIRPLUS operation for data and attributes along with file names when scanning directory;
  • many other improvements.

During the introduction of version 3, TCP support as a transport level protocol began to increase. Using TCP as a data transfer tools made using NFS via WAN, has become allowed to transmit large file sizes to view and write. Thanks to this, the developers were able to overcome the limits of restrictions in 8 KB, imposed by the user datagram protocol (UDP).

What is NFS V4?

Version 4, developed under the influence of the Endra File System (AFS) and the Server Message Block (SMB, also called CIFS), includes an increase in performance, provides better security and enters the protocol in compliance with the established conditions.

Version 4 has become the first distribution plan developed in the target group of the Internet Engineering Task Force (IETF) after Sun Microsystems has conveyed to the development of protocols to third-party specialists.

NFS version 4.1 is aimed at providing support for the protocol to use cluster server deployments, including the ability to provide scalable parallel access to files distributed between multiple servers (PNFS extension).

The newest File System Protocol - NFS 4.2 (RFC 7862) - was officially released in November 2016.

Other extensions

With the development of the standard, the corresponding tools for working with it appeared. Thus, WebNFS, extension for versions 2 and 3, allows the network access protocol to file systems easier to integrate into web browsers and activate work through firewalls.

The various protocols of third-party groups have also become associated with NFS. Of these, the most famous are:

  • Network Lock Manager (NLM) with byte protocol support (added to support UNIX System V files);
  • remote Quota (RQUOTAD), which allows NFS users to view data storage quotas on NFS servers;
  • NFS via RDMA - adaptation NFS, which uses remote direct memory access (RDMA) as a means of transmission;
  • NFS-Ganesha is a NFS server that works in user space and supporting CEPHFS FSAL (file system abstraction) using libcephfs.

Platform

Network File System is often used with UNIX operating systems (such as Solaris, AIX, HP-UX), Apple MacOS and UNIX-like OS (such as Linux and FreeBSD).

It is also available for platforms such as ACORN RISC OS, OpenVMS, MS-DOS, Microsoft Windows, Novell NetWare and IBM AS / 400.

Alternative file remote access protocols include a server message block (SMB, also called CIFS), Apple Transmission Protocol (AFP), NetWare Basic Protocol (NCP) and OS / 400 Server File System (QFilesVR.400).

This is due to the requirements of NFS, which are focused mostly on UNIX-like "shells".

In this case, the SMB and NetWare (NCP) protocols are used more often than NFS, in systems running Microsoft Windows. AFP is most widespread in Apple Macintosh platforms, and QFilesVR.400 is most often found in OS / 400.

Typical implementation

Assuming a typical Script in the UNIX style, in which one computer (client) needs access to data stored on another (NFS server):

  • The server implements the default NETWORK File System processes as NFSD to make their data publicly available to customers. The server administrator determines how to export the names and parameters of the directories, usually using the configuration file / etc / exports and the ExportFS command.
  • Server Security Administration ensures that it will be able to recognize and approve a proven client. The configuration of its network ensures that the relevant customers can negotiate with it through any firewall system.
  • The client machine requests access to exported data, as a rule, by issuing an appropriate command. She requests the server (rpcbind) that uses the NFS port, and subsequently connects to it.
  • If everything happens without errors, users on the client machine will be able to browse and interact with the installed file systems on the server within the allowed parameters.

Attention should also be paid to the fact that the automation of the Network File System process can also occur - possibly using ETC / FSTAB and / or other similar means.

Development today

By the 21st century, DFS and AFS competitors did not reach any major commercial success compared to Network File System. IBM, who had previously acquired all commercial rights to the above technologies, donated to the most of the source AFS source code to the Community of Free Software Developers in 2000. The Open AFS project exists today. In early 2005, IBM announced the completion of Sales AFS and DFS.

In turn, in January 2010, Panasas suggested NFS V 4.1 based on technology that allows you to improve the possibilities of parallel access to data. Network File System V 4.1 protocol Specifies the method of separating the metadata of the file system from the location of certain files. Thus, it goes beyond the simple division of names / data.

What is NFS this version in practice? The above feature distinguishes it from a traditional protocol that contains file names and their data under one binding to the server. When implementing Network File System V 4.1, some files can be distributed between multi-numeral servers, but the client's participation in the separation of metadata and data is limited.

When implementing the fourth distribution, the NFS server protocol is a set of server resources or components; It is assumed that they are controlled by the metadata server.

The client still refers to one metadata server to bypass or interact with namespace. When it moves files to the server and from it, it can directly interact with the data set belonging to the NFS group.

Once you have divided your network on the subnet, you must prepare for a simple search address by the name using the / etc / hosts file. If you are not going to use DNS or NIS for this, you must place all hosts to the Hosts file.

Even if you want to use DNS or NIS, you can have some subset of names and / etc / hosts. For example, if you want to have some search view by even when network interfaces are not running, for example, during loading. This is not only a matter of convenience, but also allows you to use the symbolic names of hosts in RC scripts. Thus, when changing IP addresses, you will only need to copy the updated Hosts file to all machines instead of editing a large number of RC files. Usually you will place all local names and addresses in Hosts by adding them to any Gateway and NIS server if they are used.

Also, when checking, you must make sure that the name server uses information only from the HOSTS file. DNS or NIS software can have examples of examples that can give strange results when used. To make all applications use exclusively / etc / hosts when searching for the host IP address, you must edit the /etc/host.conf file. Commit all rows starting with the Order keyword and insert the string:

Order Hosts.

The configuration of the name server library will be described in detail in Chapter 6.

The HOSTS file contains one entry on a string consisting of an IP address, host name and optional list of alias. Fields are separated by spaces or tab, the address field must begin in the first column. All that follows after the symbol # is regarded as a comment and ignored.

Host name can be fully qualified or specified relative to the local domain. For Vale, you would have introduced a fully qualified name in Hosts, vale.vbrew.com, as well as Vale in itself so that the official name and shorter local one can also be known.

An example of Hosts file for Virtual Brewery is given below. Two special names, VLAGER-IF1 and VLAGER-IF2, set addresses for both interfaces used on VLager.